java中abstract,public,protected,private以及不寫作用域的時候在繼承關係中的呼叫
1、父類是用abstract修飾的抽象類
一、用abstract修飾的類叫做抽象類,用abstract修飾的方法叫做抽象方法,如果一個類中有抽象方法,那麼這個類必須定義為抽象類,抽象類不能被例項化,只能用來被繼承
二、抽象方法沒有方法體,如果一個類繼承了抽象類,那麼必須重寫抽象方法。抽象類中可以有抽象方法,也可以有非抽象。子類可以不加引用的方式直接呼叫父類的public、protected,以及不寫作用域的方法。
animal.java
public abstract class Animal {
public abstract void shout();
public void getServletRequest()
{
};
protected void getServletRequest1()
{
};
private void getServletRequest2()
{
};
void getServletRequest3()
{
};
}
cat.java
public class Cat extends Animal {
@Override
public void shout() {
getServletRequest();
getServletRequest1();
//getServletRequest2();
getServletRequest3();
System.out.println("貓在叫。。。。");
}
}
2、父類是用public修飾的
一、父類中不能出現抽象方法,子類可以不加引用的方式直接呼叫父類的public、protected,以及不寫作用域的方法。 animal.java public class Animal {//public abstract void shout();
public void getServletRequest()
{
};
protected void getServletRequest1()
{
};
private void getServletRequest2()
{
};
void getServletRequest3()
{
};
}
cat.java public class Cat extends Animal {
//@Override
public void shout() {
getServletRequest();
getServletRequest1();
//getServletRequest2();
getServletRequest3();
System.out.println("貓在叫。。。。");
}
}
3.父類不能用protected,privavte修飾
二、如果類可以使用protected來修飾,表示該類所在的包的其它類可以訪問該類;該類所在的包的子包的類可以訪問該類,但是包沒有繼承的概念,所以後一句是不對。所以用protected來修飾類也是沒有意義的
4.不寫作用域的父類
一、父類中不能出現抽象方法,子類可以不加引用的方式直接呼叫父類的public、protected,以及不寫作用域的方法。animal.java
class Animal {
//public abstract void shout();
public void getServletRequest()
{
};
protected void getServletRequest1()
{
};
private void getServletRequest2()
{
};
void getServletRequest3()
{
};
}
cat.java
public class Cat extends Animal {
//@Override
public void shout() {
getServletRequest();
getServletRequest1();
//getServletRequest2();
getServletRequest3();
System.out.println("貓在叫。。。。");
}
}