来看Java —— 一

Sep 24, 2016 12:46 · 1351 words · 3 minute read Java

java入门学习记录第二篇:java类,继承和多态

java的类和方法

  • 构造方法与类名同名,且无返回值。
  • class前面要加修饰符,如public.

声明和实例化:

Dog myDog;
myDog = new Dog('麻吉', 3);

或者同时进行:

Dog myDog = new Dog('麻吉', 3);

修饰符

java修饰符包括访问修饰符非访问修饰符。先说访问修饰符。

访问修饰符也叫访问控制符,是指能够控制类、成员变量、方法的使用权限的关键字。

修饰符 说明
public 共有的,对所有类可见。
protected 受保护的,对同一包内的类和所有子类可见。
private 私有的,在同一类内可见。
默认的 在同一包内可见。默认不使用任何修饰符。

public:

略。

protected:

被声明为protected的变量、方法和构造方法能被同一个包中的任何其他类访问,也能够被不同包中的子类访问。

protected访问修饰符不能修饰类和接口,方法和成员变量能够声明为protected,但是接口的成员变量和成员方法不能声明为protected。

子类能访问protected修饰符声明的方法和变量,这样就能保护不相关的类使用这些方法和变量。

private:

类和接口不能声明为private

默认的:

不使用任何修饰符声明的属性和方法,对同一个包内的类是可见的。接口里的变量都隐式声明为public static final,而接口里的方法默认情况下访问权限为public

访问控制和继承:

  • 父类中声明为public的方法在子类中也必须为public。
  • 父类中声明为protected的方法在子类中要么声明为protected,要么声明为public。不能声明为private。
  • 父类中默认修饰符声明的方法,能够在子类中声明为private。
  • 父类中声明为private的方法,不能够被继承。

方法重载

在Java中,同一个类中的多个方法可以有相同的名字,只要它们的参数列表不同就可以,这被称为方法重载(method overloading)。

说明:参数列表不同包括:

  • 个数不同、类型不同和顺序不同。
  • 仅仅参数变量名称不同是不可以的。
  • 跟成员方法一样,构造方法也可以重载。
  • 声明为final的方法不能被重载。
  • 声明为static的方法不能被重载,但是能够被再次声明。

方法的重载的规则:

  • 方法名称必须相同。
  • 参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)。
  • 方法的返回类型可以相同也可以不相同。
  • 仅仅返回类型不同不足以成为方法的重载。

java基本数据类型包装类

这个东西有点意思,但是打字太慢。直接放个链接好了。

http://www.weixueyuan.net/view/5990.html

简单地说,java的基本数据类型如int,boolean等都不是一个对象,没有属性和方法可供调用。而java为了让它们有基本的方法可以调用(比如toString()),就为它们封装了一些包装类。

详情看链接吧。

java继承

继承使用extend关键字。

单继承性:Java 允许一个类仅能继承一个其它类,即一个类只能有一个父类,这个限制被称做单继承性。后面将会学到接口(interface)的概念,接口允许多继承。

super关键字

super 关键字与 this 类似,this 用来表示当前类的实例,super 用来表示父类。

super 可以用在子类中,通过点号(.)来获取父类的成员变量和方法。super 也可以用在子类的子类中,Java 能自动向上层类追溯。

super 关键字的功能:

  • 调用父类中声明为 private 的变量。
  • 点取已经覆盖了的方法。
  • 作为方法名表示父类构造方法。