Java reescrever - notas de estudo de 15 dias

Reescrever

Crie uma subclasse com o mesmo nome da classe pai, o mesmo tipo de valor de retorno e o mesmo método, mas a implementação no corpo do método é diferente para obter funções diferentes da classe pai.
alt + insert: override

Re significado

Se o pai é um animal, existe um método chamado animal latido, mas a criança é um cachorro. Usar o latido animal dos pais não pode expressar as características de um cachorro, então precisa ser reescrito como latido. A subclasse reescreve o método da classe pai de acordo com suas próprias necessidades.

Métodos estáticos e métodos não estáticos são muito diferentes!
Portanto, não adicione estático em circunstâncias normais

  • Método estático: a chamada do método está relacionada apenas ao tipo de dados definido à esquerda

public class A extends B
{
		//override  重写
	 	
		public static void text (){
				System.out.println("A>哈哈大笑");
		}
		
		//重写:都是方法的重写,和属性无关
public class B 
{
		//我们使用static 两边都要使用static
		public static void test(){
				System.out.println("B>哈哈大笑");
		}
		
		
		import com.oop.Demo02.A;
import com.oop.Demo02.B;
public class Application
{
		public static void main (String[] args){
				
  		A a = new A();
				a.text();//A类的静态方法
				
				//向上转型
				/*
				父类与子类都加static时各种输出各自的方法
				一个A>哈哈大笑,一个B>哈哈大笑
				
				取消static后 子类就重新了父类的方法只输出A>哈哈大笑
				*/
				//父类的引用指向了子类
				B b = new A();//子类重写了父类的方法
		  b.test();//B类的静态方法
		
		}
  • Método não estático
public  void text (){
				System.out.println("A>哈哈大笑");
		}
public  void test(){
				System.out.println("B>哈哈大笑");
		}

Resumindo

1. Reescreva o método de herdar e reaparecer a subclasse, como parentesco consangüíneo, mas o filho pode ter mutações genéticas.

1. O nome do método deve ser o mesmo

2. A lista de parâmetros deve ser a mesma

3. Modificador: o escopo pode ser expandido, mas não reduzido

público> protegido> padrão> privado ,

Geralmente usamos público para reescrever.

4. A exceção lançada: o escopo pode ser reduzido, mas não pode ser expandido: ClassNotFoundException -> Exception (grande)

Substituir: o método da subclasse deve ser o mesmo da classe pai: o corpo do método é diferente.

Acho que você gosta

Origin blog.csdn.net/yibai_/article/details/114856548
Recomendado
Clasificación