Day13-面向对象
作者:互联网
面向对象
一.类与对象的创建
1.类与对象的关系
2.创建与初始化对象
package oop2;
//学生类
public class Student {
//属性:字段
String name;//null
int age;//0
//方法
public void study(){
System.out.println(this.name+"在学习");
}
}
package oop2;
//一个项目应该只存在一个main方法
public class Application {
public static void main(String[] args) {
//类:抽象的;实例化
//类实例化后会返回一个自己的对象
//student对象就是Student类的一个具体实例
Student student = new Student();
Student xiaoming = new Student();
xiaoming.name="小明";
xiaoming.age=3;
System.out.println(xiaoming.name);
System.out.println(xiaoming.age);
}
}
二.构造器详解
alt+insert自动生成构造器
package oop2;
public class Person {
//一个类即使什么都不写,它也会存在一个方法
//显示的定义构造器
String name;
//实例化初始值
//构造器作用:
//1.使用new关键字,本质是在调用构造器
//2.用来初始化值
public Person() {
}
//有参构造:一旦定义了有参构造,如果想定义无参构造,无参就必须显示定义
public Person(String name) {
this.name=name;
}
}
//alt+insert自动生成构造器
/*测试类
package oop2;
public class Application2 {
public static void main(String[] args) {
//new实例化了一个对象
Person person = new Person("LiLiLiYH");
System.out.println(person.name);
}
}
*/
总结
三.创建对象内存分析
零基础很难听懂......
建议【狂神说】这节的视频反复观看
狂神说视频p65创建对象内存分析
笔记转载创建对象的内存分析
还是不好理解的话可以先复习下C语言的指针,再来看,据说会容易懂些,反正我是把视频反复看了三遍才勉强懂......
四.简单小结类与对象
我写到这里把属性是啥已经忘了......
回顾了下属性也可以称为成员变量,方法可以称为成员函数
成员变量:(实例成员变量和静态成员变量)
- 成员变量定义在类中,在整个类中都可以被访问
- 成员变量随对象的建立而建立,随对象的消失而消失,存在于对象的堆内存中
- 成员变量有默认初始化值
- 成员变量是在类实例化才能访问到
网上找了张图可以看下:
标签:name,构造,面向对象,实例,Student,Day13,public,String 来源: https://www.cnblogs.com/LiLiLiYH/p/16077267.html