JavaSE自学笔记Real_003
一、面向对象
public class Demo01 {
public static void main(String[] args) {
//===============================================
//面向对象基本概念
//===============================================
//面向对象编程:Object-Oriented Programming,OOP
//本质:以类的形式组织代码,以对象的形式封装数组
//三大特性:封装,继承,多态
//===============================================
//静态类和非静态类的区别
//===============================================
//加static则直接调用函数即可
//不加static则需要先使用new关键字实例化一个类,然后在调用里面的函数
}
}
二、类与对象
//类的定义
//学生类
public class Student {
//属性:字段
String name;
int age;
//方法
public void study(){
System.out.println(this.name + "在学习!");
}
}
//以下为main方法里的内容
//===============================================
//类的初始化与使用
//===============================================
//类:抽象的 实例化
//类实例化之后会返回一个自己的对象
//student对象就是一个Student类的具体实例
Student xiaoming = new Student();
Student xiaohong = new Student();
xiaoming.name = "小明";
xiaoming .age = 3;
xiaohong.name = "小红";
xiaohong.age = 3;
System.out.println(xiaoming.name);
System.out.println(xiaoming.age);
System.out.println(xiaohong.name);
System.out.println(xiaohong.age);
*/
三、构造器
public class Person {
//======================================
//构造器
//======================================
//一个类计时什么都不写,也会存在一个方法,该方法的名称与类名相同,这个方法叫做构造器
//狗仔七用于一个类的初始化,类似于游戏的初始化,用于程序一开始设置一些参数
//使用new关键字的时候本质实在调用构造器
String name;
//alt+insert快捷键 用于快速构建构造器
//无参构造
public Person(){
this.name = "NUST";
}
//有参构造,在有参构造之前必须要有无参构造,二无参构造此时可以为空
public Person(String name){
this.name = name;
}
}
/*
//===============================================
//构造器
//===============================================
//无参构造
//Person person1 = new Person();
//有参构造
//Person person2 = new Person("NUST");
*/
/*
构造器总结:
1、名字和类名相同
2、没有返回值
作用:
1、new关键字本质实在调用构造器
2、初始化对象的值
注意点:
定义有参构造后,如果想使用无参构造,显示点额定义一个午餐的构造
快捷键:Alt+Insert
this. =
*/
四、小总结
/*
1、类与对象
类是一个模板:抽象,对象是一个具体的实例
2、方法
定义、调用
3、对象的引用
引用类型:基本类型(8种)
对象时通过引用来操作的:栈-->堆
4、属性:字段Field 成员变量
默认初始化:
数字:0 0.0
char: u0000
boolean:false
引用类型: null
修饰符 属性类型 属性名 = 属性值;
5、对象的创建与使用
- 必须使用new 关键字创建对象,构造器 Person person = Person();
- 对象的属性: person.name
- 对象的方法: person.sleep();
6、类:
静态的属性: 属性
动态的属性: 方法
*/