一.Eclipse的应用
1.常用快捷操作
-
Ctrl+T
查看所选中类的继承树 -
Ctrl+鼠标左击
或选中方法+F3
查看方法源码
2.Java中的文档注释和制作
- 在eclipse使用时,可以配合文档注释,导出对类的说明文档,从而供其 他人阅读学习与使用
- 通过使用文档注释,将类或者方法进行注释用@简单标注基本信息。如@author 作者、@version代码版本、@param方法参数、@return方法返回值等
二.面向对象
1.不同修饰符的使用细节
- 常用来修饰类、方法、变量的修饰符如下:
- public 权限修饰符,公共访问, 类,方法,成员变量
- protected 权限修饰符,受保护访问, 方法,成员变量
- 默认什么也不写 也是一种权限修饰符,默认访问, 类,方法,成员变量
- private 权限修饰符,私有访问, 方法,成员变量
- static 静态修饰符 方法,成员变量
- final 最终修饰符 类,方法,成员变量,局部变量
- abstract 抽象修饰符 类 ,方法
- 不能同时使用的修饰符
- abstract与private不能同时使用;
- abstract与static不能同时使用;
- abstract与final不能同时使用
- 修饰类能够使用的修饰符
- 修饰类只能使用public、默认的、final、abstract关键字
- 使用最多的是public
- 实例代码
public class Demo {} //最常用的方式
class Demo2{}
public final class Demo3{}
public abstract class Demo4{}
- 修饰成员变量能够使用的修饰符
- public、protected、default、private、final、static
- 使用最多的是private
- 实例代码
public int count = 100;
protected int count2 = 100;
int count3 = 100;
private int count4 = 100; //最常用的方式
public final int count5 = 100;
public static int count6 = 100;
- 修饰构造方法能够使用的修饰符
- public、protected、default、private
- 使用最多的是public
- 实例代码
public Demo(){} //最常用的方式
protected Demo(){}
Demo(){}
private Demo(){}
- 修饰成员方法能够使用的修饰符
- public、protected、default、private、static、final、abstract
- 使用最多的是public
- 实例代码
public void method1(){}//最常用的方式
protected void method2(){}
void method3(){}
private void method4(){}
public final void method5(){}
public static void method6(){}//最常用的方式
public abstract void method7();//最常用的方式
三.自定义数据类型的使用
- 类作为方法参数,说明要向方法中传入该类的对象
- 类作为方法返回值时,说明方法要返回一个该类的对象
- 抽象类作为方法的参数时,说明要传入一个实现抽象类所有方法的子类对象
//抽象类
abstract class Person{
public abstract void show();
}
class Student extends Person{
@Override
public void show() {
System.out.println("重写了show方法");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//通过多态的方式,创建一个Person类型的变量,而这个对象实际是Student
Person p = new Student();
//调用method方法
method(p);
}
//定义一个方法method,用来接收一个Person类型对象,在方法中调用Person对象的show方法
public static void method(Person p){//抽象类作为参数
//通过p变量调用show方法,这时实际调用的是Student对象中的show方法
p.show();
}
}
- 抽象类作为方法的返回值时,说明需要返回一个实现抽象类所有抽象方法的子类对象
//抽象类
abstract class Person{
public abstract void show();
}
class Student extends Person{
@Override
public void show() {
System.out.println("重写了show方法");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//调用method方法,获取返回的Person对象
Person p = method();
//通过p变量调用show方法,这时实际调用的是Student对象中的show方法
p.show();
}
//定义一个方法method,用来获取一个Person对象,在方法中完成Person对象的创建
public static Person method(){
Person p = new Student();
return p;
}
}
- 接口作为方法参数时,说明方法要传入一个接口实现类的对象
//接口
interface Smoke{
public abstract void smoking();
}
class Student implements Smoke{
@Override
public void smoking() {
System.out.println("课下吸口烟,赛过活神仙");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//通过多态的方式,创建一个Smoke类型的变量,而这个对象实际是Student
Smoke s = new Student();
//调用method方法
method(s);
}
//定义一个方法method,用来接收一个Smoke类型对象,在方法中调用Smoke对象的show方法
public static void method(Smoke sm){//接口作为参数
//通过sm变量调用smoking方法,这时实际调用的是Student对象中的smoking方法
sm.smoking();
}
}
- 接口作为方法返回值时,说明该方法要返回一个接口实现类对象
//接口
interface Smoke{
public abstract void smoking();
}
class Student implements Smoke{
@Override
public void smoking() {
System.out.println("课下吸口烟,赛过活神仙");
}
}
//测试类
public class Test {
public static void main(String[] args) {
//调用method方法,获取返回的会吸烟的对象
Smoke s = method();
//通过s变量调用smoking方法,这时实际调用的是Student对象中的smoking方法
s.smoking();
}
//定义一个方法method,用来获取一个具备吸烟功能的对象,并在方法中完成吸烟者的创建
public static Smoke method(){
Smoke sm = new Student();
return sm;
}
}