当前位置:首页 > java技术文章 > Java编程构造方法与对象的创建详解

Java的构造方法和对象的创建

  • 发布时间:
  • 作者:码农之家原创
  • 点击:132

这篇文章主要知识点是关于java、构造方法、创建对象、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

JavaScript之美
  • 类型:JavaScript大小:94 MB格式:PDF作者:安顿?科瓦诺夫
立即下载

Java编程构造方法与对象的创建详解

java构造方法与对象的创建

可以用类来声明对象,声明对象后必须创建对象

1构造方法

首先,我们来谈谈什么叫构造方法,既然都说了这是一个构造方法,那么很显然,它本质上就是一个方法。

那么,既然作为一个方法,它应该有方法的样子吧。它除了回调一个Class();之后,也没见它有其他的定义方法的代码呀?这是因为,在未对类自定义构造方法的情况下,编译器会自动在编译期为其添加默认的构造方法

(1)程序用类创建对象时,需要使用该类的构造方法

(2)类中构造方法的名字必须和类名完全相同,而且没有类型

(3)允许一个类中编写若干个构造方法,但必须保证参数不同(参数个数相同但参数列表中对应的某个参数类型不同;参数个数不同)

(4)如果类中没有编写构造方法,系统会默认该类只有一个构造方法(无参,方法体中无语句)

1.1.默认构造方法与自定义构造方法

若类中定义了一个或多个构造方法,Java不提供默认构造方法

1.2.构造方法没有类型

2创建对象

2.1.对象的声明

类名 对象名

//例子:
Person person;

2.2.为声明的对象分配变量

使用new 运算符和类的构造方法为声明的对象分配变量,即创建对象

//例子:为声明的对象分配变量
public class Example4_2_Point {
  int x;
  int y;
  Example4_2_Point(int x, int y) {
    this.x = x;
    this.y = y;
  }
}
 
public class Example4_2 {
  public static void main(String[] args) {
    // TODO Auto-generated method stub
    Example4_2_Point example4_2_Point1 = new Example4_2_Point(10, 10);//声明对象,为对象分配变量使用new和类中构造方法
    Example4_2_Point example4_2_Point2 = new Example4_2_Point(23, 25);//声明对象,为对象分配变量使用new和类中构造方法
  }
}

2.3.对象的内存模型

2.4使用对象

“ · ”运算符:通过使用“ · ”运算符可以实现对自己变量的访问和方法的调用

1.对象操作自己的变量(体现对象的属性)

(1)通过使用“ · ”运算符可以实现对自己变量的访问和方法的调用

(2)点运算符也叫引用运算符或者访问运算符,格式:对象·方法

3对象调用类中的方法(体现对象的行为)

3.1对象的引用和实体(略)

代码例子:

//默认的构造方法、自定义构造方法、非构造方法例子
class Lader(){
	int x ,y;
	//方法1:默认的构造方法
	Lader(){
	}
	//方法2:自定义构造方法
	Lader(){
		x = 1;
		y = 1;
	}
	//方法3:自定义构造方法
	Lader(int a,int b){
		x = a;
		y = b;
	}
	//方法4:该方法类型为void,因此不是构造方法
	void Lader(int a,int b){
		x = a;
		y = b;
	}
	//方法5:该方法类型为int,因此不是构造方法
	int Lader(int a,int b){
		x = a;
		y = b;
	}
}

总结

以上就是本文关于Java编程构造方法与对象的创建详解的全部内容,希望对大家有所帮助。如有问题可以随时留言,小编会及时回复大家的,期待您的宝贵意见。

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

推荐内容

idea2020注册激活码(激活到2100年)

实例分析Java实现的zip压缩及解压缩工具类

python3 pandas 如何读取MySQL数据和插入

ThinkPHP3.2.3框架如何实现分页功能

深入理解JS函数stack size计算方法

展开 +

收起 -

Java 相关电子书
学习笔记
网友NO.869608

java基于双向环形链表解决丢手帕问题的方法示例

本文实例讲述了java基于双向环形链表解决丢手帕问题的方法。分享给大家供大家参考,具体如下: 问题: 设编号为1、2……n的几个小孩围坐一圈,约定编号为k(1=k=n)的小孩从1开始报数,数到m的那个出列,他的下一位又从1开始报数,数到m的那个人又出列,直到所有人出列为止,由此产生一个出队编号的序列。 我们现在用一个双向环形链表来解这一问题。先来看看下面这幅图: 圆圈代表一个结点,红色的指针指向下一个元素,紫色的指针指向上一个元素。first指针指向第一个元素,表明第一个元素的位置,cursor是游标指针,它的作用重大。那么这个环形的链表就可以模拟小孩排成的圆圈,下面是具体的代码: public class Test { public static void main(String[] args){ CycleLink cl=new CycleLink(5); //构造环形链表 System.out.println("码农之家测试结果:"); cl.print(); cl.set……

网友NO.189304

Java使用正则表达式验证手机号和电话号码的方法

一个朋友需要,所以写了这两个,话不多说,看代码 中国电信号段 133、149、153、173、177、180、181、189、199 中国联通号段 130、131、132、145、155、156、166、175、176、185、186 中国移动号段 134(0-8)、135、136、137、138、139、147、150、151、152、157、158、159、178、182、183、184、187、188、198 其他号段 14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147等等。 虚拟运营商 电信:1700、1701、1702 移动:1703、1705、1706 联通:1704、1707、1708、1709、171 卫星通信:1349 /** * 获取当前的httpSession * @return */ public static HttpSession getSession() { return getRequest().getSession(); } /** * 手机号验证 * @param str * @return 验证通过返回true */ public static boolean isMobile(final String str) { Pattern p = null; Matcher m = null; boolean b = false; p = Pattern.compile("^[1][3,4,5,7,8][0-9]{9}$"); // 验证手机号 m = p.matcher(str); b……

网友NO.394626

Java实现XML文件学生通讯录

java实现学生通讯录,使用XML文件作为数据存储,实现学生编号,姓名,年龄,住址,专业,生日等信息的添加,删除,修改,查找,备份,恢复,专业分类查找等功能。 项目需要导入dom4j.jar包。 /*添加学生记录*/import java.awt.BorderLayout;import java.awt.EventQueue;import javax.swing.ButtonGroup;import javax.swing.JFrame;import javax.swing.JPanel;import javax.swing.border.EmptyBorder;import javax.swing.JLabel;import javax.swing.JOptionPane;import java.awt.Font;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JTextField;import javax.swing.JRadioButton;import javax.swing.JButton;import javax.swing.JComboBox;public class AddPerson extends JFrame { private JPanel contentPane; private JTextField jt1; private JTextField jt2; private JTextField jt3; private JTextField jt4; private JTextField jt5; private JTextField jt6; private JTextField jt7; public AddPerson() { setDefaultCloseOper……

网友NO.949339

java JTree JCheckBox树复选框详解

本文实例为大家分享了java JTree JCheckBox树复选框展示的具体代码,供大家参考,具体内容如下 1.CheckTreeManager.java public class CheckTreeManager extends MouseAdapter implements TreeSelectionListener { private CheckTreeSelectionModel selectionModel = null; // private JTree tree = new JTree(); private JTree tree = null; int hotspot = new JCheckBox().getPreferredSize().width; public CheckTreeManager(JTree tree) { this.tree = tree; selectionModel = new CheckTreeSelectionModel(tree.getModel()); tree.setCellRenderer(new CheckTreeCellRenderer(tree.getCellRenderer(), selectionModel)); tree.addMouseListener(this); //鼠标监听 selectionModel.addTreeSelectionListener(this); //树选择监听 } public void mouseClicked(MouseEvent me) { TreePath path = tree.getPathForLocation(me.getX(), me.getY()); if(path==null) return; if(me.getX()tree.getPathBounds(path).x+hotspot) return; boolean selected = selectionModel.isPathSelected(path, true); selectionModel.removeTreeSe……

网友NO.553235

Java工作队列代码详解

我们写了通过一个命名的队列发送和接收消息,如果你还不了解请点击:RabbitMQJava入门。这篇中我们将会创建一个工作队列用来在工作者(consumer)间分发耗时任务。 工作队列的主要任务是:避免立刻执行资源密集型任务,然后必须等待其完成。相反地,我们进行任务调度:我们把任务封装为消息发送给队列。工作进行在后台运行并不断的从队列中取出任务然后执行。当你运行了多个工作进程时,任务队列中的任务将会被工作进程共享执行。 这样的概念在web应用中极其有用,当在很短的HTTP请求间需要执行复杂的任务。 1、准备 我们使用Thread.sleep来模拟耗时的任务。我们在发送到队列的消息的末尾添加一定数量的点,每个点代表在工作线程中需要耗时1秒,例如hello…将会需要等待3秒。 发送端: NewTask.java import java.io.IOException;import com.rabbitmq.client.Channel;……

<
1
>

电子书 编程教程 文档 软件 源码 视频

Copyright 2018-2020 xz577.com 码农之家

本站所有电子书资源不再提供下载地址,只分享来路

免责声明:网站所有作品均由会员网上搜集共同更新,仅供读者预览及学习交流使用,下载后请24小时内删除

版权投诉 / 书籍推广 / 赞助:QQ:520161757