Java学习第十一天<构造器详解><创建对象内存分析><类与对象简单小结>

 

 构造器详解

package com.oop.demo02;
//java>>class
public class Person {
    //一个类即使什么都不写,也会存在一个方法:1.和类的名字相同 2.无返回值类型
    String name;
    int age;
    //实例化初始值
    //1.使用new关键字,本质是在调用构造器,必须要有构造器
    //2.用来初始化值
    public Person(){//alt+insert+constructor+select none默认生成无参构造器
       this.name="zhengtu6";
    }//无参构造
​
    //有参构造:一旦定义了有参构造,无参就必须显示定义
    public Person(String name){
​
        this.name=name;//alt+insert+constructor+ok默认生成有参构造器
    }
​
    public Person(String name, int age) {//多选两个+OK可出来两个
        this.name = name;
        this.age = age;
    }
}
​
/*
* Application测试
*  public static void main(String[] args) {
*  Person person = new Person();
        Person person2 = new Person("zhengtu");
        Person person3 = new Person("zhengtu",20);
        System.out.println(person.name);
        System.out.println(person2.name);
        System.out.println(person3.name+person3.age);
    }
    * 构造器
    * 1.和类名相同
    * 2.没有返回值
    * 作用
    * 1.new 本质在调用构造方法
    * 2.初始化对象的值
    * 注意
    * 1.定义了有参构造,如想使用无参构造,无参构造就必须显示定义
    * 快捷键
    * alt+insert
    * this表示这个类的 this=传进来的值
* */

 

创建对象内存分析

public class Pat {
    public String name;
    public  int age;
​
    //无参构造
    public void shout(){
        System.out.println("叫了一声");
    }
}
/*
* Application测试
*  public static void main(String[] args) {
*     Pat dog = new Pat();
        dog.name="旺财";
        dog.age=3;
        dog.shout();
        System.out.println(dog.name);
        System.out.println(dog.age);
​
        Pat cat = new Pat();
​
    }
* */

Java学习第十一天<构造器详解><创建对象内存分析><类与对象简单小结>Java学习第十一天<构造器详解><创建对象内存分析><类与对象简单小结>

 

类与对象简单小结

/*
* 1.类与对象
* 类是一个模板(抽象),对象是具体实例
* 2.方法
* 定义、调用
* 3.对象的引用
* 引用类型:基本类型(8)
* 对象是通过引用来操作,从栈(引用>)>>>堆(真实对象),指向对象地址
* 4.属性:字段field 成员变量
* 默认初始化:数字(0) char(u0000) boolean(false) 引用(null)
* 5.定义
* 公式:  修饰符 属性类型 属性名=属性值
* 6.对象的创建和使用
* 必须使用new 关键字创造对象,要有构造器
* 对象的属性 Person zhengtu=new Person(); zhengtu.name
* 对象的方法 zhengtu.sleep()
* 7.类
* 静态的属性(属性)
* 动态的行为(方法)
* 8.java面向对象三大特征
* 封装、继承、多态
* */

上一篇:Linq利用Distinct去除重复项(可自己指定)


下一篇:抽象类