Java编程构造方法与对象的创建详解
时间:2019-04-10
本文章向大家介绍Java编程构造方法与对象的创建详解,主要包括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编程构造方法与对象的创建详解的全部内容,希望对大家有所帮助。如有问题可以随时留言,小编会及时回复大家的,期待您的宝贵意见。
- Python-WXPY实现微信监控报警
- MySQL InnoDB Lock(一)
- Java 时间类-Calendar、Date、LocalDate/LocalTime
- Java消息队列--JMS概述
- Java FtpClient 实现文件上传服务
- Java消息队列--ActiveMq 实战
- Java消息队列-Spring整合ActiveMq
- 【知识】SAS数据分析完整笔记(3)
- 深入浅出Redis-Spring整合Redis
- Stream-快速入门Stream编程
- MySQL Regular Expression
- Jenkin-持续集成
- 4.3.4.7 Pattern Matching
- mysql left join、right join、inner join用法分析
- java教程
- Java快速入门
- Java 开发环境配置
- Java基本语法
- Java 对象和类
- Java 基本数据类型
- Java 变量类型
- Java 修饰符
- Java 运算符
- Java 循环结构
- Java 分支结构
- Java Number类
- Java Character类
- Java String类
- Java StringBuffer和StringBuilder类
- Java 数组
- Java 日期时间
- Java 正则表达式
- Java 方法
- Java 流(Stream)、文件(File)和IO
- Java 异常处理
- Java 继承
- Java 重写(Override)与重载(Overload)
- Java 多态
- Java 抽象类
- Java 封装
- Java 接口
- Java 包(package)
- Java 数据结构
- Java 集合框架
- Java 泛型
- Java 序列化
- Java 网络编程
- Java 发送邮件
- Java 多线程编程
- Java Applet基础
- Java 文档注释
- PyTorch5:torch.nn总览&torch.nn.Module
- 玩转Spring中强大的spel表达式!
- C++核心准则E.18:最小限度显式使用try/catch
- C++核心准则E.19:如果无法选择适当的资源句柄,使用final_action表现清除处理
- VBA解析复合文档04——解析目录信息
- 【程序源代码】基于NetCore2.2/3.1功能强大的Cms建站系统
- Linux如何屏蔽国外IP-宝塔如何屏蔽国外IP-appnode如何屏蔽国外IP
- Spring Boot Actuator H2 RCE复现-解决篇
- Spring Boot Actuator H2 RCE复现
- 【JAVA基础&高级】 数组篇
- 回文对
- 初探线程池
- 【译】代码中如何写出更有意义的命名
- nodejs源码分析之线程
- Java String Krains 2020-08-05