2013-09-03 3 views
-7
import java.io*; 
import java.awt.*; 
import java.util.concurrent.*; 

public class StudentQueue<E> extends ArrayBlockingQueue<E> 
{ 
    public StudentQueue(int capacity) 
    { 
     super(capacity); 
    } 
} 

Как переопределить методы соответствующего родительского класса? Мне нужно переопределить методы в java-библиотеке ArrayBlockingQueue. Как я могу реализовать свой собственный метод и переопределить метод в родительском классе?Как переопределить метод родительского класса?

Любой пример будет выполнен, не обязательно должен быть ArrayBlockingQueue. Пожалуйста и спасибо.

+0

Документация охватывает класс/метод переопределения, почему бы вам не начать там? – str

+3

Вы не указали, что уже пробовали. Каждый вводный текст на Java даст указание о том, как переопределить методы. Пожалуйста, укажите * конкретную проблему *. –

+2

Вы [посмотрели учебник?] (Http://docs.oracle.com/javase/tutorial/java/IandI/override.html) –

ответ

1

Если ваш метод имеет то же имя, что и родительские, параметры и тип возвращаемого значения, вы его переопределяете. Также вы можете добавить аннотацию @Override в верхней части вашего метода.

Всегда проверяйте, что метод родителя не является окончательным и не является частным.

Например

public class Parent{ 
    public void method(String param){ 
    //Do stuff 
    } 

    private void notExtendable(String param){ 

    } 

    protected void alsoExtendable(String param){ 

    } 
} 

public class SubClass extends Parent{ 
    @Override 
    public void method(String param){ 
    //super.method() //if you want to execute parent's method 
    //Do your own stuff 
    } 
} 

Вы вся информация вам нужна здесь: http://docs.oracle.com/javase/tutorial/java/IandI/override.html

0

Похоже, что вы сделали именно это ... просто поставить свой код ниже super(capacity),

1

Скажет, класс A наследуется от класса B. Чтобы иметь метод в A, перепишите один из методов B, просто создайте метод с той же сигнатурой. То есть, создайте метод с тем же возвращаемым типом и с тем же числом и типом параметров.

Это на самом деле очень распространенная вещь. Например, все классы должны переопределять методы boolean equals(Object o) и String toString() из класса Object (который все классы наследуют).

 Смежные вопросы

  • Нет связанных вопросов^_^