2019-05-21 java学习日记

面向对象

构造方法

构造方法的作用是给对象的数据(属性进行初始化)。

如:

 

 1 class Demo_Constructor {                    //Constructor构造
 2     public static void main(String[] args) {
 3         Person p = new Person();            
 4         //在一创建对象的时候,系统就帮我调用了构造方法
 5         //p.Person();                //构造方法不能用对象调用
 6         p.show();
 7 
 8         Person p2 = new Person();            //再次创建对象
 9         p2.show();
10     }
11 }
12 
13 
14 
15 class Person {
16     private String name;  //private 私密的 string,字符串类型
17     private int age;
18 
19     //构造方法
20     public Person() {
21         //System.out.println("Hello World!");
22         //return;    
23         //构造方法也是有return语句的,格式是return;
24         name = "张三";
25         age = 23;
26     }
27 
28     public void show() {
29         System.out.println(name + "..." + age);
30     }
31 }
32     

构造方法格式特点

1,方法名与类名相同(大小也要与类名一致)
2,没有返回值类型,连void都没有
3,没有具体的返回值return;

构造方法的重载

1,有参的好处是可以给对象属性进行初始化,还可以动态的给我们的属性赋值;

2,当你没有给任何的构造造方法的时候,系统会默认自动提供一个空参构造方法;

3,当我们给出了构造方法,系统将不再提供默认的空参构造方法。

class person () {

private string name;

private int age;

public person() {   //创建一个空参的构造方法

System.out.println("这是一个空参构造");}

public person(string mane,int age){   //创建一个空参的构造方法

this.name = name;

this.age = age;      

System.out.println("这是一个有参构造");}

public void show() {

System.out.println(name + "……" + age);}}}

 给成员变量赋值的两种方法以及区别

public void setName (String name) { //设置姓名

this.name = name ;}

public void getName ()}{ //获取姓名

return name ; }

public void setAge (int age) { //设置年龄

this.age = age;}

public void getAge () { //获取年龄

return age; }

{person P1 = new person("张三",14); //有参构造创建对象

P1 = new person("大张",15);

//这种 方法看运行结果貌似是改名了,其实是将原对象变成了垃圾,不推荐使用

System.out.println(getName + "……" + getAge);

person P2 = new person (); //空参构造创建对象

P2.setName("张开");

P2.setAge(20);}

P2.setName("小张");System.out.println(getName + "……" + getAge);

setXxx方法是修改其属性值 ,这两种方式 在开发中setXxx用的更多一些,因为他比较灵活。

猜你喜欢

转载自www.cnblogs.com/Sherwin-liao/p/10903569.html