java类,对象,类的继承,接口

本文探讨了Java中类的概念,如何定义属性和方法,以及类的继承关系、方法重写和自动/强制转型。重点讲解了对象的多样性和接口的使用。

类与对象

什么是类,在Java中最必不可少的就是一个类,对于类来说他没有特别规范,可以是一个人,可以是一支笔一个电脑。而在java中对于对象来说就更加细致了,他也是具体的事物比如说我们的类是一支笔,对象既可以是一只蓝色的笔,也可以是一直钢笔,对于类而言对象更加细致,更加的多样化 

在类中我们还可以定义类的属性和方法,我们可以试着理解为类的性质和行为 比如说我们设置一个学生类,我们可以设置学生的学分是属性,学习是方法。 也就可以理解为学生的行为是学习,属性是学分,通过学习获得了学分

public class stedent{
       public srting name;
       public  int score;
public void study (int score){
   system.out.println("") ;  
}
public staic void main (String[]args){
    student st =new student();
    st.name="xx"
    st.score="xx"
    }
}

类的继承

我们之前已经写过类的继承的部分格式和代码了

类的继承,首先我们要知道1两个类需要有逻辑上的大小包含顺序,比如老师类包含语文老师类,电脑类包含游戏本电脑类。其次我们要知道类的继承的关键词为extend

public class chinesestudent extends student

格式 子类 extends 父类

java中 子类只有一个父类,而父类可以有很多子类。就像你只能有一个父亲 但是可以有许多亲生兄弟姐妹。

子类可以继承父类的属性和方法,但是构造方法不行 因为构造方法需要本类的名字,私有属性也不能直接调用。

在类的继承中,要求我们在()终添加参数,我们可以添加他的子类中的参数,来简化代码

方法重写

两个类必须有继承关系 

返回值类型,方法名,参数类型(个数,顺序)完全一样

作用 重写方法后的新功能;

        也可以保存父类的对象;调用父类的对象

        //super 关键字 调用父类的方法 表示当前类的父类对象。

                                 如果我们就是在子类中运用了这种方法,我们在重写方法后,子类和父类的方法效果在主函数中都会实现

在子类的构造方法中,一定要调用父类的构造方法否则可能会报错,调用方法super()表示当前类的父类

public UNstudent(){
      super()

}

自动转型

自动转型  向上转型  A a = new B();

在创建对象的时候,我们都是A a = new A();前后都是类名都一样。然后我们用B对象创建但是B必须是A的子类。

在主函数中这样创建对象,执行出来就是子类的方法。因为再电脑检查的的时候先看父类定义这样的方法然后再看子类是否有同样的重写方法,如果有的话优先执行子类。

如果你运用向上转型的对象,在主函数里调用子类中有而父类中没有的方法就会报错,因为计算机不能越过父类直接读取子类中的方法。

强制转型

例如  强制转型的代码

UNstudent unst =(UNstudent) st;

可以将父类的对象转成子类的,也就是向下转型.。

值得注意的是,在向下转型的前提是必须由子类向上转型后才能实现,否则就会报错

接口(要使用就创建类继承他,然后改写抽象方法)implements

interface是接口的关键字

在接口中 属性叫做常量,  方法叫做抽象方法(不能有大括号)。

常量与属性不同的是 1 只能用public 2 必须赋值

public String name =“godbless";

3.在调用接口时,可以直接用接口名字调用,不需要使用对象调用。

static:静态变量(类变量),所有对象共享该变量。

Test t1 = new  Test;
t1 count = 10;
Test t2 = new  Test;
t2 count = 20;
System.out.println("t1= "+t1.count +"t2= "t2.count
final class Test{
	public  int count;
	
	
}

final:最终,不可变的。

4 当接口继承的时候,只能继承接口且能有多继承。

在方法中加入final 就不能重写 public final void xxx{}

在定义类中加入关键字,不能被继承的。

基本类型:1 整形:byte short int long 

                  2 字符:   char 

                  3.浮点:float double 

                  4.布尔型:boolean;

                  5:字符串:string

引用数据类型: 类(class)接口(interface)数组 枚举 注解

    这个是我们检测代码常用的检查方式              

   System.out.println("r = "+r+"   g1 = "+g1+"   b = "+b);

评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值