学习笔记
package com.oop.demo02;
public class Person {
//一个类即使什么都不写,它也会存在一个方法
//显示的定义构造器
String name;
int age;
//alt+Insert快捷键 一键生成构造器
//无参构造器
public Person() {
}
//有参构造器 :一旦定义了有参构造,无参就必须显示定义!
public Person(String name, int age) {
this.name = name;
this.age = age;
}
}
/*构造器:
1.和类名相同
2.没有返回值
作用:
1.new本质在调用构造方法
2.初始化对象的值
注意点:
1.定义有参构造之后,如果想使用无参构造,显示定义一个无参构造!
Alt+Insert 一键生成构造器
* */
面向对象
-
小结
(1)类与对象
类是一个模板:抽象
对象是一个具体的实例
(2)方法的定义和调用
(3)对应的引用
引用类型:八大基本类型( byte,int,float,double,long,char,boolean,short
对象是通过引用来操作的,栈————>堆
(4)属性:字段Fi 成员变量
默认是初始化的
数字: 0 0.0
char:u0000
boolean:false
引用类型:null
格式:修饰符 属性类型 属性名 = 属性值!
(5)对象的创建和使用
-必须使用new 关键字创造对象,构造器 Person ldz = new Person();
-对象的属性 ldz.name
-对象的方法 ldz.age()
(6)类:
静态的属性 属性
动态的行为 方法!
封装
这些是使用方法的例子
注意:输出是使用get方法!调用是使用set方法!
package com.oop;
import com.oop.demo02.Person;
import com.oop.demo03.Pet;
import com.oop.demo04.Student;
public class Application {
public static void main(String[] args) {
Student s1 = new Student();
s1.setName("李顶子");
System.out.println(s1.getName());
s1.setAge(19);
System.out.println(s1.getAge()+"岁");
s1.setId(15266545);
System.out.println(s1.getId());
}d'd
/*
* 1.提高程序的安全性,保护数据
* 2.隐藏实现代码的细节
* 3.统一接口
* 4.系统的可维护性增加了*/
}
private属于私有的
/get set是为了提供一些可以操作这个属性的方法!
//提供一些可以在public使用的 get,set方法
//get 获得这个数据
set给这个数据设置值
Super
Super可以用来输出被继承的父类里的方法
Protected是受保护的属性
Super注意点:
-
super调用父类的构造方法,必须在构造方法的第一个
-
Super必须只能出现在子类的方法或者构造方法中
-
super和this不能同时调用构造方法!
对比 this:
代表的对象不同:
this: 本身调用者这个对象
super: 代表父类对象的引用
前提:
this:没有继承也可以使用
super: 只能在继承条件才可以使用
构造方法:
this():本类的构造
super():父类的构造
方法重写
-
使用快捷键重写时需要删除static才行!
-
override:重写的意思
-
@override :注解:有功能的注释!
-
重写都是方法重写,与属性无关!
-
因为继承是子级继承到了父级里所有的方法,但是子级里有些方法用不到,所以需要方法重写!
浙公网安备 33010602011771号