Conhecimentos básicos de classes Java e objetos 3-

Processo para a diferença entre orientada a objectos e

Processo para a (programação estruturada)

实际上是一个面向操作过程,首先设计一系列过程(算法)来求解问题(操作数据),然后再考虑存储数据的方式(组织数据)。即程序=算法\+数据结构。对应典型的计算机语言是c。

vantagens:

性能比面向对象高,调用速度快,比如单片机、嵌入式开发、Linux/Unix等一般采用面向过程开发

desvantagens:

没有面向对象易维护、易复用、易扩展

Orientada a objectos (OOP)

和面向过程的次序相反,首先要确定如何组织数据,然后再考虑如何操作数据的算法。面向对象的程序是由对象组成,每个对象包含对用户公开的特定功能部分和隐藏的实现部分。用户不必关心对象的具体实现,只需要对象能够满足用户的需求即可。即程序=对象\+消息。

vantagens:

De fácil manutenção e reutilização, fácil de expandir

desvantagens:

性能比面向过程低

Classes e Objectos

Class (classe)

是同一种对象的集合与抽象,是一组相关的属性和行为的集合。类中成员变量是事物(同一种对象集合)的属性,成员方法是事物的行为。定义类实际上就是定义类的成员(成员变量和成员方法)。变量描述的是事物的属性,方法描述的是事物的行为。

variáveis ​​de instância

又叫做对象变量,成员变量。当通过类生成对象的时候才分配存储空间,再通过对象的引用来访问实例变量。各个对象之间的实例变量互不干扰。有默认初始值,存在于对象所在的堆内存中。

variáveis ​​de classe

又叫静态变量,是一种用static关键字修饰的特殊成员变量。在类加载的时候就分配存储空间。 所有由这个类生成的对象都共用这个类变量。一个对象修改了变量,则所有对象中的这个变量的值都会发生改变。

As variáveis ​​locais

方法中或某局部块中声明定义的变量或方法的参数,只存在与创建他们的代码块中(\{ \})。如函数内,语句内。

Exemplos de métodos

每个实例方法都有一个返回值类型,一个签名(指定方法名)

construtor

每个Java类至少含有一个构造方法以创建一个对象的标识,构造方法的作用是初始化实例变量。
  1. formato:

    • nome do método e nome da classe

    • Nenhum tipo de valor de retorno

    • Nenhum valor de retorno específico

    
    student(){}
    
    
  2. precauções:

    • Construtores pode substituir (sobrecarga), mas não pode ser reescrita (overwriter).

    • Se você não escrever no construtor da classe, o sistema irá fornecer um construtor padrão sem argumentos, se escrita, o sistema não estará disponível (recomendado para escrever um construtor sem argumento)

      • Papel: programa Java executado antes da subclasse construtor, sem usar super () para chamar o construtor específico classe pai, o construtor padrão sem argumentos irá chamar a classe pai, num momento em que eles não podem não encontrar execução construtor arg, de modo que o erro de compilação ocorrerá.
    • Construtor não pode ser chamado de forma recursiva

  3. À forma como os membros da atribuição de variável:

    • Construtor sem argumentos + set, o método get

    • construtor parametrizado

    
    class Student{
    
        private String name;
    
        private int age;
    
        public Student(){}
    
        public Student(String name, int age){
    
            this.name = name;
    
            this.age = age;
    
        }
    
        public void getName(){
    
            return name;
    
        }
    
        public String setName(String name){
    
            this.name = name;
    
        }
    
        public int getAge(int age){
    
            this.age = age;
    
        }
    
        public void getAge(){
    
            return age;
    
        }
    
    }
    
    class StudentDemo {
    
        public static void main(String[] args) {
    
            //创建对象,调用setter方法赋值
    
            Student s = new Student();
    
            s.setName("Ethan");
    
            s.setAge(16);
    
            //调用有参构造方法创建对象
    
            Student s = new Student("Ethan", 16);
    
        }
    
    }
    
    

Objecto (objecto)

对象(object)是类的一个具体的实例。由类构造(construct)对象的过程叫做创建类的实例(instance)。

objetos de processo de inicialização

Student s = new Student(); //对象初始化
  1. Student.class carregado na memória
  2. Na memória de pilha na memória é s
  3. Na memória heap para o objeto no espaço de memória de aplicativo
  4. inicialização padrão objeto
  5. inicialização de objetos de exibição (atribuição de classe de inicialização, como o nome privado = "Ethan";)
  6. atribuição construtor
  7. O endereço do objecto atribuído a variável s

objetos anônimos

  1. Nenhum nome de um objeto, como um novo aluno ();
  2. Ele pode ser passado como parâmetros reais, como novo Student () estudo () .;

parâmetros

  1. Parâmetro: o parâmetro para a definição do método. Meios para receber parâmetro chamador passou apenas quando o método é chamado, a máquina virtual alocaria unidade de memória. Assim, apenas os métodos internos válidos.
  2. Argumentos: os parâmetros passados ​​para o método para invocar. Primeiro ele foi atribuído antes da transferência para outros métodos.

E os valores que transmitem passados ​​por referência

  1. Valor é passado: o método é chamado, passando-os argumentos para o valor do parâmetro correspondente, a função recebe uma cópia do valor original, no caso em que a presença de dois tipos de substancialmente igual (argumentos e parâmetros) da memória . O método de operação da parte traseira estão no parâmetro a ser modificado sem alterar o valor do argumento.
  2. Passado por referência: chamada de método, um endereço (valor do parâmetro não é) o parâmetro real é passado para os parâmetros formais correspondentes, a função recebe o endereço argumento e apontando para o mesmo endereço de memória. O método de operação da parte traseira afetará o argumento.
  3. Nota: Somente o valor passado em Java

Em parâmetros formais e reais, este artigo está falando sobre boa

https://yq.aliyun.com/articles/642055#

Três características do objecto-orientado

pacote

Herdar

polimorfismo

pacote

  1. Papel: detalhes de implementação hide específicos, e proporcionar um método de acesso comum

  2. vantagens:

    • Melhorar a reutilização de código

    • Melhorar código de segurança

  3. Princípio de design: você não quer que o mundo exterior para conhecer os detalhes ocultos. uma técnica de reflexão é uma entidade privada pacotes, classes, métodos, modificadores de acesso são encapsulados.

Acho que você gosta

Origin www.cnblogs.com/EthanWong/p/12667055.html
Recomendado
Clasificación