JAVA学习第四天

外部代码通过public方法操作实例,内部代码可以调用private方法;

 public String name;
  private String name;

extends:继承
OC中,类的继承方法:

@interface Employee : Person {
   NSString *employeeEducation;
}

JAVA中,类的继承方法:

class Person {
    protected String name;
    protected int age;
}

class Student extends Person {
    public String hello() {
        return "Hello, " + name; // OK!
    }
}

Override和Overload:在继承关系中,子类如果定义了一个与父类方法签名完全相同的方法,被称为覆写/重写(Override)。Override和Overload(重载)不同的是,如果方法签名不同,就是Overload,Overload方法是一个新方法;如果方法签名相同,并且返回值也相同,就是Override。

继承可以允许子类覆写父类的方法。如果一个父类不允许子类对它的某个方法进行覆写,可以把该方法标记为final。用final修饰的方法不能被Override。

abstract:如果父类的方法本身不需要实现任何功能,仅仅是为了定义方法签名,目的是让子类去覆写它,那么,可以把父类的方法声明为抽象方法:

abstract class Person {
    public abstract void run();
}

interface,就是比抽象类还要抽象的纯抽象接口,因为它连字段都不能有。因为接口定义的所有方法默认都是public abstract的,所以这两个修饰符不需要写出来(写不写效果都一样)。

implements:当一个具体的class去实现一个interface时,需要使用implements关键字。

class Student implements Person {

}

Java中,一个类只能继承自另一个类,不能从多个类继承。但是,一个类可以实现多个interface。

class Student implements Person, Hello { // 实现了两个interface
    ...
}

请添加图片描述
static:静态方法属于class而不属于实例,因此,静态方法内部,无法访问this变量,也无法访问实例字段,它只能访问静态字段。

实例变量和静态变量。

实例变量,从属于实例,只有对类进行实例化(比如new Person())后才能访问;

静态变量,从属于类,使用static和final关键字修饰,只能通过类名访问。

package:Java定义了一种名字空间,称之为包。一个类总是属于某个包,类名(比如Person)只是一个简写,真正的完整类名是包名.类名。

我们还需要按照包结构把Java文件组织起来。src作为源码目录。

编译后的.class文件也需要按照包结构存放。如果使用IDE,把编译后的.class文件放到bin目录下。

在一个class中,我们总会引用其他的class。

// 导入完整类名:
import mr.jun.Arrays;
在写import的时候,可以使用*,表示把这个包下面的所有class都导入进来。

import static:可以导入可以导入一个类的静态字段和静态方法。

编写class的时候,编译器会自动帮我们做两个import动作:

默认自动import当前package的其他class;

默认自动import java.lang.*。

在java中,args是arguments的缩写,是指字符串变量名,属于引用变量,名字代号而已,只是一个默认名,可以自己取的,一般都习惯性照写。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值