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编程构造方法与对象的创建详解的全部内容,希望对大家有所帮助。如有问题可以随时留言,小编会及时回复大家的,期待您的宝贵意见。
您可能感兴趣的文章
- 01-10Java咖啡馆(1)——叹咖啡
- 01-10Java Socket编程(三) 服务器Sockets
- 01-10Java进阶:Struts多模块的技巧
- 01-10Java Socket编程(一) Socket传输模式
- 01-10Java Socket编程(二) Java面向连接的类
- 01-10Java运行时多态性的实现
- 01-10Java经验点滴:处理没有被捕获的异常
- 01-10Java Socket编程(四) 重复和并发服务器
- 01-10Java中的浮点数分析
- 01-10面向对象编程:Java中的抽象数据类型
阅读排行
本栏相关
- 01-10Java咖啡馆(1)——叹咖啡
- 01-10JVM的垃圾回收机制详解和调优
- 01-10Java Socket编程(三) 服务器Sockets
- 01-10Java进阶:Struts多模块的技巧
- 01-10J2SE 1.5版本的新特性一览
- 01-10Java Socket编程(一) Socket传输模式
- 01-10Java运行时多态性的实现
- 01-10Java Socket编程(二) Java面向连接的类
- 01-10Java Socket编程(四) 重复和并发服务
- 01-10Java经验点滴:处理没有被捕获的异常
随机阅读
- 01-10C#中split用法实例总结
- 01-11ajax实现页面的局部加载
- 08-05织梦dedecms什么时候用栏目交叉功能?
- 01-10使用C语言求解扑克牌的顺子及n个骰子
- 01-10delphi制作wav文件的方法
- 01-11Mac OSX 打开原生自带读写NTFS功能(图文
- 01-10SublimeText编译C开发环境设置
- 04-02jquery与jsp,用jquery
- 08-05DEDE织梦data目录下的sessions文件夹有什
- 08-05dedecms(织梦)副栏目数量限制代码修改