Java: constructor 构造代码块
- 构造器与类同名
- 每个类可以有1一个以上的构造器
- 构造器可以有0个,1个或者多个参数
- 构造器没有返回值,不可以写return
- 构造器总是伴随着new操作一起调用
构造函数的作用:可以用于给对象进行初始化。
构造函数的小细节:当类中没有定义构造函数时,系统会默认给该类提供一个空参数的构造函数;
什么时候定义构造函数:当分析事物时,该事物存在具备一些特性或者行为,那么就将这些内容定义在构造函数中。
另:不要在构造器中定义与实例域重名的局部变量
class PersonDemo2
{
public static void main(String[] args)
{
Person p1 = new Person(); Person p2 = new Person("Siyingcheng"); Person p3 = new Person("Amy.Cao",27);
}
} class Person
{
private String name;
private int age;
Person()
{
System.out.println("Name=" + name + ", Age=" + age);
}
Person(String n)
{
name = n;
System.out.println("Name=" + name + ", Age=" + age);
}
Person(String n, int a)
{
name = n;
age = a;
System.out.println("Name=" + name + ", Age=" + age);
}
public void setName(String n)
{
name = n;
}
public String getName()
{
return name;
}
}
构造代码块:
作用:给对象进行初始化,一般用于所有对象共性的内容进行初始化
构造代码块优先于构造函数执行;
构造代码块是给所有对象进行初始化,而构造函数是给对应的对象进行初始化;
class PersonDemo2
{
public static void main(String[] args)
{
Person p1 = new Person(); Person p2 = new Person("Siyingcheng"); Person p3 = new Person("Amy.Cao",27);
}
} class Person
{
private String name;
private int age; {
cry();
} public static void cry()
{
System.out.println("孩子哭了");
} Person()
{
System.out.println("Name=" + name + ", Age=" + age);
}
Person(String n)
{
name = n;
System.out.println("Name=" + name + ", Age=" + age);
}
Person(String n, int a)
{
name = n;
age = a;
System.out.println("Name=" + name + ", Age=" + age);
}
}
Java: constructor 构造代码块的更多相关文章
- java中构造代码块、方法调用顺序问题
1. 继承的概念 继承在本职上是特殊——一般的关系,即常说的is-a关系.子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法. 2. 继承中的初始化顺序 从类的结构上而言,其 ...
- Java中构造代码块的使用
例子1 public class Client { { System.out.println("执行构造代码块1"); } { System.out.println("执 ...
- 关于java构造函数,静态代码块,构造代码块,和普通代码块相关总结(一)
构造函数.构造代码块和静态代码块容易混淆,它们的执行条件和执行顺序也常常容易犯迷.这里就针对这些问题说一下我个人的一些理解,顺便对这部分内容做个小结. 一.构造函数 格式:类名(参数1,参数2,-){ ...
- Java面试题 静态代码块 构造代码块 构造方法 的执行顺序
JAVA中的静态代码块 构造代码块 构造方法执行顺序: 静态代码块(类加载时执行)>>构造代码块>>构造方法 下面展示一个简单的例子,推荐大家动手运行一遍: public cl ...
- Java中普通代码块,构造代码块,静态代码块区别及代码示例
//执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. 其中静态代码块只执行一次.构造代码块在每次创建对象是都会执行. 1 普通代码块 1 //普通代码块 ...
- Java中普通代码块,构造代码块,静态代码块执行顺序
//执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. 其中静态代码块只执行一次.构造代码块在每次创建对象是都会执行. 1 普通代码块 1 //普通代码块 ...
- Java提高篇——静态代码块、构造代码块、构造函数以及Java类初始化顺序
静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行.执行顺序优先级:静态块,main(),构造块,构造方法. 构造函数 public H ...
- Java中的构造代码块
代码块 ----a静态代码块 ----b构造代码块 ----c普通代码块 执行顺序:(优先级从高到低.)静态代码块>mian方法>构造代码块>构造方法. a.静态代码块: 静态代码块 ...
- java中的静态代码块、构造代码块、构造方法
运行下面这段代码,观察其结果: package com.test; public class HelloB extends HelloA { public HelloB() { } { System. ...
随机推荐
- php笔记[2]
strlen()函数获得字符窜的长度 读取文件:fgets(),fgetss()和fgetcsv() 读取整个文件:readfile(),fpassthru()和file() 读取一个字符:fgetc ...
- Scrum Meeting---Three(2015-10-27)
今日已完成任务和明日要做的任务 姓名 今日已完成任务 今日时间 明日计划完成任务 估计用时 董元财 今日我学习了Java Web,同时安装好了我的MySQL 4h 进行数据库设计以及Web项目的创建 ...
- sqlcmd 登录和执行语句。
sqlcmd -U sa -P atc@2014 -S HK-DB01 -d msdb -Q "exec sp_start_job @job_name='3PL_OUT_TEST'" ...
- Linux_查看进程
1. 静态: ps -aux 2. 动态: top 3.
- 卷积FFT、NTT、FWT
先简短几句话说说FFT.... 多项式可用系数和点值表示,n个点可确定一个次数小于n的多项式. 多项式乘积为 f(x)*g(x),显然若已知f(x), g(x)的点值,O(n)可求得多项式乘积的点值. ...
- poj3304Segments(直线与多条线段相交)
链接 枚举两点(端点),循环遍历与直线相交的线段. #include <iostream> #include<cstdio> #include<cstring> # ...
- Java List实体类去重
版权声明:本文为博主原创文章,未经博主允许不得转载. List特点:元素有放入顺序,元素可重复 Map特点:元素按键值对存储,无放入顺序 Set特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入 ...
- MyEclipse8.5启动无法选择工作空间的问题
方法一:打开Window---Preferences---General---Startup and Shutdown,勾选Prompt for workspace on startup 选项,再次登 ...
- Python学习笔记15—mysql的操作
安装 Python-MySQLdb pip install mysql-Python Python对mysql的操作 建立一个实验数据库demo mysql> create database d ...
- Oracle 删除重复的记录,只保留一条
查询及删除重复记录的SQL语句 1.查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 where Id in (select Id from 表 g ...