/*构造函数对象已建立就会调用与之对应的构造函数作用:可用于初始化对象当一个类中未定义构造函数时,系统会默认给该类构建一个空参数的构造函数;当自定义构造函数后,系统不再定义空参数的构造函数
*/
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 类中构造函数的讲解相关推荐

  1. frida hook java 函数_使用 Frida 来 Hook Java 类中的构造函数(构造函数带重载),获取解密后的js脚本...

    一个APP使用了Auto.js 的加密脚本.我们的任务是将其加密脚本进行解密并dump出来.在  https://www.52pojie.cn/thread-1112407-1-1.html 一文中, ...

  2. 【Groovy】Groovy 脚本调用 ( Java 类中调用 Groovy 脚本 )

    文章目录 前言 一.Groovy 类中调用 Groovy 脚本 1.参考 Script#evaluate 方法分析 Groovy 类中调用 Groovy 脚本 2.创建 Binding 对象并设置 a ...

  3. java中类可以包含哪些元素,Java类中包含的元素及作用

    Java类是面试中常考的知识点,是组成Java应用的基本成分,小型和大型的应用都是由类组建而成的.作为合格的Java工程师,一定要清晰了解Java类及其包含的元素及作用,今天学码思Java培训老师就J ...

  4. Java类中this关键字和static关键字的用法详解

    今天给大家总结介绍一下Java类中this关键字和static关键字的用法. 文章目录 this关键字用法: 1:修饰属性,表示调用类中的成员变量 2:this修饰方法 3:this表示当前对象的引用 ...

  5. Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决)

    Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) 参考文章: (1)Myeclipse中导入项目后java类中汉字注释出现乱码问题(已解决) (2)https://www.cn ...

  6. Shell-通过shell启动Java类中的main方法 + 通过Shell启动jar包

    文章目录 概述 shell启动Java类中的main方法 启动脚本分析 启动脚本 shell启动jar包 概述 Java程序 运行在linux主机上, 通过shell脚本启动为进程. Java程序中 ...

  7. Java 类中可以覆盖静态方法吗?

    Java 类中可以覆盖静态方法吗? 不,你不能在Java中覆盖静态方法,但在子类中声明一个完全相同的方法不是编译时错误,这称为隐藏在Java中的方法. 你不能覆盖Java中的静态方法,因为方法覆盖基于 ...

  8. 派生类中构造函数与虚构函数的研究

    1.继承过程中的构造函数 A:继承与派生过程中,基类的构造函数不能被继承,派生类中需要声明自己的构造函数. B:声明构造函数时,只需要对本类中新增成员进行初始化.至于基类继承过来的成员,应该调用基类的 ...

  9. 二十三、Java类中重载和重写的区别

    @Author:Runsen @Date:2020/5/31 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件.导致翘课严重,专业排 ...

最新文章

  1. Ubuntu16.04 pip3 install 报错 working_set.find(moduleOrReq) or require(str(moduleOrReq))[0]
  2. PMcaff微课堂 | 洋葱淘elya妞,前百度UX Leader:独门创业经验,产品秘籍
  3. Windows上mount NFS V4
  4. 【Linux】一步一步学Linux——command命令(226)
  5. MinGW编译wxWidget
  6. Pytorch的BatchNorm层使用中容易出现的问题
  7. (十二)linux内核定时器
  8. jquery 数字滚动特效 数字自增特效 数字位数动态适应
  9. P3802 小魔女帕琪
  10. PDF文件分割电脑版怎么操作
  11. 【BZOJ】3436: 小K的农场
  12. filenet安装前置工作-总结安装一天的成果
  13. JCMsuite 纳米光学仿真分析
  14. 键盘没有 菜单键 menu 键盘映射
  15. 最新版Activit7从原理到项目,工作流精讲上线
  16. java blowfish ecb,来自blowfish / base64的解密消息时出错
  17. 前端CSS样式去除body默认边距和a标签下划线去除和高亮显示问题
  18. LTE下行用户特定参考信号
  19. Kudu 原理、API使用、代码
  20. LeetCode 热题 HOT 100

热门文章

  1. PO Create PO时关于汇率问题需要注意的步骤
  2. BCH将在新支付协议下不断奋进
  3. 巴曙松:收到了Roger送的BCH,已全捐给慈善基金
  4. 比特币现金今日价格_比特币现金价格_今日比特币现金价格_06.12 上午 比特币现金价格 6060.87
  5. MoSonic:对SubSonic的分布式存储、缓存改进尝试(2)
  6. SQLite 源码仓库(Repository)
  7. PostgreSQL 打开文件句柄优化 - 百万以上实体对象初始化优化
  8. Java的List排序
  9. dede使用方法----如何调用最新文章,最热文章,友情链接
  10. OpenGL和图形卡