JAVA基础7-构造器

  1. 我们将类的属性私有化,通过set方法进行设置,通过get方法获取

  2. 示例:

public class Test1 {

public static void main(String[] args) {

Person p1=new Person();

p1.name=“jack”;

p1.setAge(20);

p1.show();

System.out.println(p1.getAge());//20

Person p2=new Person();

p2.name=“rose”;

p2.setAge(-20);

p2.show();

//name=roseage=0china

}

}

class Person{

String name;

int age;

private String nationality=“china”;//添加私有权限,外部无法更改

//对设置年龄进行设置必须大于零,不然默认为0

public void setAge(int num){

if(num >= 0){

age=num;

}else {

age=0;

}

}

//获取属性

public int getAge(){

return age;

}

public void show(){

System.out.println(“name=” + name +" "+“age”+ age + " " +nationality);

}

}

  1. 不对外暴露私有方法

  2. 单例模式

构造器(constructor)

===================================================================================

构造作用


  1. 创建对象 new+构造器

  2. 初始化对象信息

  3. 如果没有显示定义类的构造器的话,则系统默认提供一个空参的构造器

  4. 默认构造器权限与类权限一致

  5. 一个类中如果有多个构造器,那么构造器之间为重载

  6. 定义构造器的格式:权限修饰符 类(形参列表){}

public class Test2 {

public static void main(String[] args) {

Person2 p=new Person2();

//constructor

}

}

class Person2{

String name;

public Person2(){

System.out.println(“constructor”);

}

}

JavaBean

===========================================================================

  1. JavaBean是一种JAVA语言写成的可重用组件

  2. 特点:

  • 类是公共的

  • 有一个无参的公共构造器

  • 有属性,且有get,set方法

  1. 用户可以使用JavaBean将功能,处理,值,数据库访问和其他任何可以用JAVA代码创建的对象进行打包,其他开发者可以通过JSP页面,JavaBean,apple程序来访问,也就是说JavaBean提供了复制和黏贴功能

this关键字

==========================================================================

  1. 在方法内部使用,即这个方法所属对象引用

  2. 在构造器内部使用,表示构造器正在初始化对象

  3. this在表示当前对象时,可以调用类的属性,方法,构造器

  4. 也就是在方法内部需要调用该方法的对象时,用this

  5. 通常this可以省略,但如果出现类和方法形参重名就需要加上

  6. 示例:

public class Test2 {

public static void main(String[] args) {

Person3 p2=new Person3();

p2.setName(“jack”);

System.out.println(p2.getName());

//jack

p2.eat();

//做饭 吃饭

}

}

class Person3{

String name;

public void setName(String name){

this.name=name;//这样可以解决name=name指代不明情况

}

public String getName(){

return this.name;

}

public void eat(){

this.cook();//这里在方法里面调用类的方法

System.out.println(“吃饭”);

}

public void cook(){

System.out.println(“做饭”);

}

}

  1. this调用构造器
  • 在类的构造器中,可以显示使用this(形参列表),调用本类指定的其他构造器

  • 调用应注意在一条调用链上同一个构造器只能出现一次

  • 构造器调用时只能出现在首行,并且只能声明一个调用其他构造器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值