java初学者必看之构造方法详细解读

构造方法是专门用来创建对象的方法,当我们通过关键字new来创建对象时,其实就是在调用构造方法。

格式

public 类名称(参数类型 参数名称){
方法体
}

注意事项:

1.构造方法的名称必须和所在类名称完全一样,就连大小写也一样。
2. 构造方法不要写返回值类型,连void都不写。【示例代码如下】

package com.example.app06;
//编写构造方法
public class Student {
public Student(){
System.out.println("构造方法执行啦!");
}
}
package com.example.app06;
//调用构造方法
public class Demo02Student {
public static void main(String[] args) {
Student stu=new Student();
}
}

运行结果为:构造方法执行啦!

(注意事项接第2点)

  1. 造方法不能return一个具体的返回值。
  2. .如果没有编写构造方法,那么编译器将会赠送一个构造方法,没有参数、方法体什么都不做。
  3. 一旦编写了至少一个构造方法,那么编译器将不再赠送。
  4. 构造方法也是可以进行重载的:方法名称相同、参数列表不同。
package com.example.app06;
//编写构造方法
public class Student {
private String name;
private int age;
public Student(){
System.out.println("无参构造方法执行啦!");
}
public Student(String name,int age){
System.out.println("全参/有参构造方法执行啦!");
this.age=age;
this.name=name;
}
}
package com.example.app06;
//调用构造方法
public class Demo02Student {
public static void main(String[] args) {
Student s=new Student();
System.out.println("=============");
Student stu=new Student("碧瑶",18);
}
}

要获取或者改变对象的值,仍然需要Setter/Getter方法。

public class Student {//编写含getter和setter 的构造方法
private String name;
private int age;
public Student(){
System.out.println("无参构造方法执行啦!");
}
public Student(String name,int age){
System.out.println("全参/有参构造方法执行啦!");
this.age=age;
this.name=name;
} public void setName(String name) {
this.name = name;
} public String getName() {
return name;
} public void setAge(int age) {
this.age = age;
} public int getAge() {
return age;
}
}
package com.example.app06;
//调用构造方法
public class Demo02Student {
public static void main(String[] args) {
Student s=new Student();
System.out.println("=============");
Student stu=new Student("碧瑶",18);
System.out.println("姓名:"+stu.getName()+",年龄:"+stu.getAge());
//如果需要改变成员变量的数据内容,仍然需要使用setXXX方法,例如碧瑶长大了
}
}
http://www.dtmao.cc/news_show_715224.shtml

java初学者必看之构造方法详细解读的更多相关文章

  1. java初学者必看经典

    配置java环境变量: JAVA_HOME:配置JDK的目录 CLASSPATH:指定到哪里去找运行时需要用到的类代码(字节码) PATH:指定可执行程序的位置 LINUX系统(在" .ba ...

  2. java初学者必看的学习路线

    不管在编程语言的排行榜中,还是在大多数企业应用的广泛程度来看,Java一直都是当之无愧的榜首.Java语言有着独特的魅力吸引着广大的年轻人去学习,每个人学习的方式方法不一样. 第一步:首先要做好学习前 ...

  3. Java编程思想重点笔记(Java开发必看)

    Java编程思想重点笔记(Java开发必看)   Java编程思想,Java学习必读经典,不管是初学者还是大牛都值得一读,这里总结书中的重点知识,这些知识不仅经常出现在各大知名公司的笔试面试过程中,而 ...

  4. 15个初学者必看的基础SQL查询语句

    本文由码农网 – 小峰原创翻译,转载请看清文末的转载要求,欢迎参与我们的付费投稿计划! 本文将分享15个初学者必看的基础SQL查询语句,都很基础,但是你不一定都会,所以好好看看吧. 1.创建表和数据插 ...

  5. mysql进阶(二十六)MySQL 索引类型(初学者必看)

    mysql进阶(二十六)MySQL 索引类型(初学者必看)   索引是快速搜索的关键.MySQL 索引的建立对于 MySQL 的高效运行是很重要的.下面介绍几种常见的 MySQL 索引类型.   在数 ...

  6. Java初学者必学的JSTL

    所谓JSTL就是标签库  JSP Standard Tag Library,如果做为java初学者你看不懂那些$符号的话,就有必要来了解一下JSTL,如果你看到满眼的<%}%>(Scrip ...

  7. Java初学者必知 关于Java字符串问题

    摘自 http://developer.51cto.com/art/201503/469443.htm 下面我为大家总结了10条Java开发者经常会提的关于Java字符串的问题,如果你也是Java初学 ...

  8. web前端开发初学者必看的学习路线(附思维导图)

    很多同学想学习WEB前端开发,虽然互联网有很多的教程.网站.书籍,可是却又不知从何开始如何选取.看完网友高等游民白乌鸦无私分享的原标题为<写给同事的前端学习路线>这篇文章,相信你会有所收获 ...

  9. Java数组(初学者必看)

    数组无论在哪种编程语言中都算是最重要的数据结构之一,同时不同语言的实现及处理也不尽相同.但凡写过一些程序的人都知道数组的价值及理解数组的重要性,与链表一道,数组成为了基本的数据结构.尽管Java提供了 ...

随机推荐

  1. 解决 ThinkPHP5 RCE 在PHP7下,不能使用包含的问题

    今天朋友遇到一个ThinkPHP5 _method 的RCE漏洞,环境是:tp5014开启debug,linux,PHP7,日志,Session都写不进去,没办法包含的情况. 思路就是使用反序列化,回 ...

  2. HTML5 使用浏览器内置数据库之 indexedDB

    indexedDB是H5规范里的浏览器内置数据库,是nosql数据库的一种.因为另一种数据库Web SQL不再受W3C支持,所以还得学习下这个. 基本情况 兼容性:ie11及以上都支持, W3C是这么 ...

  3. Mysql 基本操作命令

    1.添加用户 1.1 登录MYSQL: @>mysql -u root -p @>密码 1.2 创建用户: 格式:grant select on 数据库.* to 用户名@登录主机 ide ...

  4. Spring boot 异步线程池

    package com.loan.msg.config; import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandle ...

  5. UML——基本结构

    一.宏观导图 学习UML的时候我们首先要把握好她的结构,基本上好料都在里面了.最重要的是构造块的学习. 公共机制:是为了让我们更加清楚的描述UML的各种关系.图.事物等. 规则:和语法的意思差不多,就 ...

  6. 十四自定义构建购物计算组件&表单组件

    目录: 1.前言 2.组件介绍 3.js业务逻辑层 4.视图层 5.css属性设置 6.效果呈现 1.前言: 在第九篇文章购物车做好后,还忘记了一个至关重要的计算组件.在鸿蒙的组件中并没有提供这样一个 ...

  7. D - Seek the Name, Seek the Fame

    The little cat is so famous, that many couples tramp over hill and dale to Byteland, and asked the l ...

  8. ACM-ICPC 2017 Asia Xi'an

    ACM-ICPC 2017 Asia Xi'an Solved A B C D E F G H I J K 7/11 O O Ø O O ? O O O for passing during the ...

  9. Codeforces Round #665 (Div. 2) D - Maximum Distributed Tree dfs贡献记录

    题意: t组输入,每组数据中n个节点构成一棵树,然后给你n-1条边.给你一个m,然后给你m个k的素数因子,你需要给这n-1条边都赋一个权值,这n-1条边的权值之积应该等于k.如果k的素数因子数量小于n ...

  10. Codeforces Round #603 C. Everyone is a Winner!

    题意:给你一个整数n,求所有n/k的值(k∈{1,2,3...,n,.......}). 题解:最简单的方法是用枚举1~sqrt(n),把除数和商放进set中,就能直接水过,但后来看其他人的题解了解到 ...