java-day19
anuário
mapa de memória Method Invocation
construtor de subclasse chama a classe pai tem dois tipos de situações:
manhã
OverLoadTest o = new OverLoadTest();
o.test(null);
Note que quando há uma série de métodos sobrecarregados, parâmetros, estes métodos são tipos de referência, e desta vez se você chamar o método diretamente e passar - um valor nulo, então o compilador é erro de compilação provável, porque se esses métodos estão sobrecarregados parâmetro tipos, existem relação sub-mãe, então o método parâmetro tipo de chamada de sub-prioridade, se um parâmetro tipo de referência não é a relação entre pais e filhos, o compilador erro.
Criar e inicializar objetos
Criar um objeto usando a nova palavra-chave quando, além do espaço de memória alocada, mas também para atributos de objeto de fazer a atribuição de inicialização padrão, e chamar o construtor da classe.
Por exemplo:
new Student();
//这个代码在main方法中执行了
1. O espaço de memória alocada para o objeto eo objeto são inicializados, do tipo digital é 0, o tipo de referência é nula, booleana é falsa.
2. Se fizermos uma exibição atribuídos às variáveis no objeto, ele irá mostrar com esta atribuição, o valor padrão antes de substituir.
Por exemplo:
private String name = "Tom";
3. construtor da classe chamada é executado no código construtor
Nota que, se desta vez não é uma variável para receber o objeto (= número de atribuição), então o tempo irá retornar os valores de endereço de memória de objeto para esta variável tipo de referência.
Por exemplo:
//stu最终保存了对象的内存地址值。
Student stu = new Student();
mapa de memória
mapa de memória Method Invocation
tarde
construtor
construtor de classe, também conhecidos como métodos de construção, os construtores, é criada quando o objecto a ser chamado, e a estrutura tem as seguintes duas características:
1, deve ser consistente com o nome da classe
2, deve haver nenhum tipo de retorno, não pode escrever vazio
O papel do construtor
1, utilizando a nova palavra-chave para criar um objeto quando, com as costas da classe deve estar presente no construtor
2, o código construtor, crie arrependimento é chamado de um objeto, que pode completar a inicialização do objeto.
public class Student{
private String name;
public Student(){}
public Student(){
this.name = "default-value";
}
construtor sobrecarregado
Além do construtor padrão sem argumentos, há muitas vezes que usaremos construtor argumento, ao criar o objeto, podemos colocar o argumento para o construtor, em seguida, completar a inicialização do objeto.
transcodificação
String str = "你好";
byte[] arr = str.getBytes();
System.out.println(Arrays.toString(arr));
String newStr = new string(arr);
System.out.println(newStr);
Herdar
Uma relação entre 1 e classe é a herança de classe
Existem muitos relacionamentos entre as classes e as classes Java, apenas uma sucessão, não é dependente, em combinação, a polimerização.
2, dois da hierarquia de classe, uma subclasse (classe derivado), é um superclasse (classe-il)
Herdar o pai classe chave estende
public class Student extends Person{
}
3, a relação entre o pai e filho classe, é o "é uma" relação de sentido
public class dog extends animal{}
//dog is a animal
4, a herança java entre classes e uma única base de
Entre classe e classe, pode ter entre interfaces e relacionamentos de herança de interface entre as classes e é a interface e a interface entre única herança, a herança múltipla é meio herança simples que uma classe pode ter um [direta ] do tipo pai, mas uma classe pode ser um monte de classe super, super classe refere-se a uma classe do tipo pai
5, os atributos de classe pai e métodos podem ser herdado pelas subclasses
construtor de subclasse chama a classe pai tem dois tipos de situações:
1, uma chamada implícita
Se houver um construtor padrão sem argumentos na classe pai, em seguida, subclasse-lo será o padrão default implícita automaticamente chamar o construtor da classe pai sem parâmetros
2, mostram a chamada
Se a classe pai é nenhum construtor padrão sem argumentos, então precisamos subclasse o manual explicitamente chamar o construtor da classe pai tem parâmetros
6, cada classe Se você não especificar um tipo de pai, o compilador herdar diretamente a classe de objeto.
Java de modo que cada um de classe direta ou indiretamente classe objeto herda, e cada objeto tem e Objeto é uma relação de
public class Student extends Object{
}
package com.zzb.day19;
public class Student extends Person{
public static void main(String[] args){
Student stu = new Student();
stu.name="Tom";
System.out.println(stu.name);
stu.run();
}
}
package com.zzb.day19;
public class Person{
public String name;
public void run(){
System.out.println("people run....");
}
}