面向对象
D.D.sadasds
这个作者很懒,什么都没留下…
展开
-
内部类
内部类内部类和外部类内部类可以获得外部类的私有属性静态内部类一个java类中可以有多个class类,但是只能有一个public class类局部内部类匿名内部类原创 2021-09-28 23:15:27 · 49 阅读 · 0 评论 -
接口的定义与实现
接口的定义与实现接口的作用:约束定义一些方法,让不同的人实现 10 ----> 1方法是 public abstract常量是 public static final接口不能被实例化,接口中没有构造方法implements可以实现多个接口必须重写接口中的方法package com.oop.dome09;public interface TimeService{ void timer();}package com.oop.dome09;//interfac原创 2021-09-28 12:04:33 · 82 阅读 · 0 评论 -
抽象类
抽象类package com.oop.dome08;//抽象类的所有方法,继承了它的子类,都必须要实现他的方法。除非子子类public class A extends Action{ @Override public void doSomething() { }}package com.oop.dome08;//abstract 抽象类 :类 extends:单继承 (接口可以多继承)public abstract class Action {原创 2021-09-27 19:52:16 · 31 阅读 · 0 评论 -
static关键字和Final
被final修饰的类不能被继承(断子绝孙)原创 2021-09-27 19:28:58 · 26 阅读 · 0 评论 -
instanceof(类型转换)引用类型和类型转换
package com.oop;import com.oop.dome06.Person;import com.oop.dome06.Student;import com.oop.dome06.Teacher;public class Application { public static void main(String[] args) { //Object > String //Object > Person > Teache..原创 2021-09-27 12:17:02 · 38 阅读 · 0 评论 -
什么是多态
什么是多态多态注意事项:多态是方法的多态,属性没有多态父类和子类要有联系 类型转换异常!ClassCastException!存在条件:继承关系,方法需要重写,父类引用指向子类对象!Father f1 = Son();哪些方法不能被重写:1.static 静态方法,属于类,它不属于实例2.final 常量;3.private方法:...原创 2021-09-26 19:20:58 · 64 阅读 · 0 评论 -
重写方法
重写方法即b是A new出来的对象,因此调用A的方法,因为静态方法是类的方法,而非静态是对象的方法,有static时,b调用了B类的方法,因为b是b类定义的,没有static时,b调用的是对象的方法,而b是用A类new的重载是同一类里,方法名相同,参数类型不同。重写是子父类间,子类重写父类的方法,alt+insert,方法名相同,方法内容不同。使用public,且不使用static方式重写:需要有继承关系,子类重写父类的方法! 1.方法名必须相同 2.参数列表必须相同原创 2021-09-26 14:18:49 · 665 阅读 · 0 评论 -
super
supersuper注意点:1.super调用父类的构造方法,必须在构造方法的第一个2.super必须只能出现在子类的方法或者构造方法中!3.super和this不能同时调用构造方法!Vs this:代表的对象不同:this:本身调用者这个对象super:代表父类对象的引用前提this:没有继承也可以使用super:只能在继承条件才可以使用构造方法this();本类的构造super();父类的构造!package com.oop.dome05;//在Java中,所有的类,都原创 2021-09-26 12:10:49 · 41 阅读 · 0 评论 -
什么是继承
什么是继承Java中类只有单继承,没有多继承!(一个儿子只能有一个爸爸,但是一个爸爸可以有多个儿子)package com.oop.dome05;//在Java中,所有的类,都默认直接或间接继承Object//Person 人: 父类public class Person { //public 公共 //protected 受保护 //default 默认 //private 私有 public int money = 1_0000_000原创 2021-09-25 23:34:05 · 45 阅读 · 0 评论 -
封装
封装封装(数据的隐藏):高内聚,低耦合。属性的私有,get、setpackage com.oop;import com.oop.dome04.Student;/*1.提高程序的安全性,保护数据2.隐藏代码的实现细节3.统一接口4.系统可维护增加了 */public class Application { public static void main(String[] args) { Student s1 = new Student();原创 2021-09-25 21:49:41 · 46 阅读 · 0 评论 -
类与对象小结
类与对象类是一个模板:抽象,对象是一个具体的实例2. 方法定义、调用!3.对象的引用引用类型: 基本类型(8)对象是通过引用来操作的:栈 —>堆4.属性:字段 File 成员变量默认初始化:数字: 0 0.0char:u0000boolean:false引用:null修饰符 属性类型 属性名 = 属性值!5.对象的创建和使用必须使用new 关键字创造对象,构造器 Person dongwei = new Person();对象的属性 dongwei.name.原创 2021-09-24 23:10:10 · 36 阅读 · 0 评论 -
创建对象内存分析
创建对象内存分析原创 2021-09-24 14:58:46 · 30 阅读 · 0 评论 -
构造器
构造器package com.oop.Dome02;public class Person { //一个类即使什么都不写,它也会存在一个方法 //显示的定义的构造器 String name; int age; //alt + insert //1.使用new关键字,本质是在调用构造器 //2.用来初始化值 public Person(){ } //有参构造:一旦定义了有参构造,无参就必须显示定义 pu原创 2021-09-24 13:57:40 · 49 阅读 · 0 评论 -
类与对象的创建
类与对象的创建package com.oop.Dome02;//学生类public class Student { //属性:字段 String name; //null int age; //0 //方法 public void study(){ System.out.println(this.name+"学生在学习"); }}package com.oop.Dome02;//一个项目应该只有一个main方法publi原创 2021-09-24 12:44:42 · 32 阅读 · 0 评论 -
方法的调用(递归)
方法的调用(递归)静态方法package com.oop.dome01;public class Dome02 { public static void main(String[] args) { //实例化这个类 new //对象类型 对象名 = 对象值; Student student = new Student(); student.say(); //没有static这样调用,有直接调用 } /原创 2021-09-24 12:21:36 · 38 阅读 · 0 评论 -
回顾方法
回顾方法参数列表:(参数类型,参数名)…package com.oop.dome01;import java.io.IOException;//Dome01 类public class Dome01 { //main 方法 public static void main(String[] args) { } /* 修饰符 返回值类型 方法名(...){ //方法体 return 返回值;原创 2021-09-24 00:20:14 · 57 阅读 · 0 评论 -
什么是面向对象
什么是面向对象面向对象的本质就是:以类的方式组织代码,以对象的组织(封装)数据抽象三大特性:封装继承多态原创 2021-09-24 00:02:46 · 36 阅读 · 0 评论