java 类中构造函数的讲解
/*构造函数对象已建立就会调用与之对应的构造函数作用:可用于初始化对象当一个类中未定义构造函数时,系统会默认给该类构建一个空参数的构造函数;当自定义构造函数后,系统不再定义空参数的构造函数
*/
class PersonDemo2
{public static void main(String[] args) {System.out.println("Hello World!");
// Person p1 = new Person();
// p1.setName("lisan");
// p1.getName();Person p2 = new Person("Lili");p2.setName("fmi");p2.getName();
// Person p3 = new Person("Lilei",12);}
}class Person
{private String name;private int age;/*定义构造函数,函数名与类名必须一致*/ Person(){System.out.println("A:系统默认的构造函数,无参数");}/*this :代表本类的对象,到底代表哪一个?this代表它所在函数所属对象的引用。哪个对象在调用this所在的函数,this就代表哪个对象应用:当定义类中的功能时,该函数内部要调用到该函数的对象时,就用this来表示此对象
*/ Person(String name){// name = name ; //注意变量作用域 类成员被 函数参数覆盖 导致赋值失败 this.name = name;// System.out.println("B:Name = "+name);}Person(String name,int n){
// this.name = name;
// Person(name); // 错误,构造函数间不能直接调用,可通过this 解决,this语句必须放在函数第一行//因为初始化语句应该先执行,避免赋值语句赋值后被覆盖this(name); //this 关键字用于构造函数构造age = n;System.out.println("C:Name = "+name +"," + "age = " + age);}
/*构造代码块:对象一建立就运行,运行顺序: 构造代码块 --> 构造函数作用:给所有对象进行初始化,而构造函数则通过函数重载
方式调用,不同对象可能调用不同的构造函数{System.out.println("这是代码块起始位置:");age = 2;System.out.println("代码块赋值age = "+age);}
*/public void setName(String name){this.name = name; //参数名与类成员名一样时,通过this关键指定//name = name;
// name = "name改变了,没加this";
// System.out.println("name = "+name);
// System.out.println("调用函数赋值名字");}public String getName(){// System.out.println("调用函数输出名字:"+name);return this.name;}
}
/**
新建一个对象时,其实时通过调用构造函数来构造的,所以当构造函数设为private 时,外部将无法创建此类的新的实例对象?????????
*/
java 类中构造函数的讲解相关推荐
- frida hook java 函数_使用 Frida 来 Hook Java 类中的构造函数(构造函数带重载),获取解密后的js脚本...
一个APP使用了Auto.js 的加密脚本.我们的任务是将其加密脚本进行解密并dump出来.在 https://www.52pojie.cn/thread-1112407-1-1.html 一文中, ...
- 【Groovy】Groovy 脚本调用 ( Java 类中调用 Groovy 脚本 )
文章目录 前言 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 a ...
- java中类可以包含哪些元素,Java类中包含的元素及作用
Java类是面试中常考的知识点,是组成Java应用的基本成分,小型和大型的应用都是由类组建而成的.作为合格的Java工程师,一定要清晰了解Java类及其包含的元素及作用,今天学码思Java培训老师就J ...
- Java类中this关键字和static关键字的用法详解
今天给大家总结介绍一下Java类中this关键字和static关键字的用法. 文章目录 this关键字用法: 1:修饰属性,表示调用类中的成员变量 2:this修饰方法 3:this表示当前对象的引用 ...
- Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决)
Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) 参考文章: (1)Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) (2)https://www.cn ...
- Shell-通过shell启动Java类中的main方法 + 通过Shell启动jar包
文章目录 概述 shell启动Java类中的main方法 启动脚本分析 启动脚本 shell启动jar包 概述 Java程序 运行在linux主机上, 通过shell脚本启动为进程. Java程序中 ...
- Java 类中可以覆盖静态方法吗?
Java 类中可以覆盖静态方法吗? 不,你不能在Java中覆盖静态方法,但在子类中声明一个完全相同的方法不是编译时错误,这称为隐藏在Java中的方法. 你不能覆盖Java中的静态方法,因为方法覆盖基于 ...
- 派生类中构造函数与虚构函数的研究
1.继承过程中的构造函数 A:继承与派生过程中,基类的构造函数不能被继承,派生类中需要声明自己的构造函数. B:声明构造函数时,只需要对本类中新增成员进行初始化.至于基类继承过来的成员,应该调用基类的 ...
- 二十三、Java类中重载和重写的区别
@Author:Runsen @Date:2020/5/31 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排 ...
最新文章
- Ubuntu16.04 pip3 install 报错 working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
- PMcaff微课堂 | 洋葱淘elya妞,前百度UX Leader:独门创业经验,产品秘籍
- Windows上mount NFS V4
- 【Linux】一步一步学Linux——command命令(226)
- MinGW编译wxWidget
- Pytorch的BatchNorm层使用中容易出现的问题
- (十二)linux内核定时器
- jquery 数字滚动特效 数字自增特效 数字位数动态适应
- P3802 小魔女帕琪
- PDF文件分割电脑版怎么操作
- 【BZOJ】3436: 小K的农场
- filenet安装前置工作-总结安装一天的成果
- JCMsuite 纳米光学仿真分析
- 键盘没有 菜单键 menu 键盘映射
- 最新版Activit7从原理到项目,工作流精讲上线
- java blowfish ecb,来自blowfish / base64的解密消息时出错
- 前端CSS样式去除body默认边距和a标签下划线去除和高亮显示问题
- LTE下行用户特定参考信号
- Kudu 原理、API使用、代码
- LeetCode 热题 HOT 100
热门文章
- PO Create PO时关于汇率问题需要注意的步骤
- BCH将在新支付协议下不断奋进
- 巴曙松:收到了Roger送的BCH,已全捐给慈善基金
- 比特币现金今日价格_比特币现金价格_今日比特币现金价格_06.12 上午 比特币现金价格 6060.87
- MoSonic:对SubSonic的分布式存储、缓存改进尝试(2)
- SQLite 源码仓库(Repository)
- PostgreSQL 打开文件句柄优化 - 百万以上实体对象初始化优化
- Java的List排序
- dede使用方法----如何调用最新文章,最热文章,友情链接
- OpenGL和图形卡