构造器详解
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(); } * */
类与对象简单小结
/* * 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面向对象三大特征 * 封装、继承、多态 * */