Java Object Oriented 1
-
Ideias de design orientado a processos e objetos
Orientado para o processo: pop
Analise as etapas necessárias para resolver o problema e implemente as etapas passo a passo.
Por exemplo: o problema de carregar elefantes na geladeira. Existem três etapas
1. Abra a geladeira
2. Carregue o elefante
3. Feche a geladeira
Orientado a objetos: oop linguagem de programação orientada a objetos
Pensando e resolvendo problemas em um método de classificação, o método de pensamento orientado a objetos é adequado para lidar com problemas complexos.O pensamento orientado a objetos está em consonância com os hábitos cognitivos humanos.
Por exemplo: o problema de carregar elefantes na geladeira
Projete duas classes primeiro
1. Geladeiras (incluindo categorias)
Categoria (contém dois métodos, abrir e fechar)
2. Humano (incluindo método de operação)
3. Classe Elefante (função que entra na geladeira) As
três classes chamam as funções umas das outras para lidar com o problema em conjunto.Orientado para o processo
é adequado para lidar com coisas simples e se concentra diretamente no processo, que é simples e eficaz.Orientado a objetos é adequado para lidar com coisas complexas. Primeiro, use uma maneira orientada a objetos para classificar o relacionamento geral e, em seguida, lide com detalhes em profundidade de acordo com as diferentes classes.
Orientado a objetos não pode substituir o orientado a processos, eles são complementares. Orientado a objetos se concentra em entender a relação entre as coisas em um nível macro e, quando se trata de como obter um determinado detalhe, ainda adota uma maneira de pensar orientada a processos. Se a orientação a objetos for deixada Diante do processo, é impossível conseguir um pouso real e se tornar uma água passiva.
-
Classe Java
Uma classe é um modelo que descreve as propriedades e o comportamento de uma classe de objetos.
Classe é uma abstração de algumas características básicas de um certo tipo de grupo em um mundo objetivo.
Classe = desenho do projeto do carro = arquivo .java; objeto = carro real;
Estrutura de classe
Variável membro: descrição das propriedades do objeto;
Método: o comportamento do objeto; (coisas que podem ser feitas)
Método de construção: usado para criar objetos;
Classe interna: a classe declarada no corpo da classe.
Bloco: bloco de código
Etapa 1 : descobrir a classe
O formato de declaração da classe é: [Modificador de permissão de acesso] [Modificador] classe Carro {}
Existem dois tipos de modificadores de acesso: público e padrão
Modificadores: final e abstrato
A palavra-chave class é usada para definir uma classe
A convenção de nomenclatura dos nomes de classe Java: coloque a primeira letra do nome da classe em maiúscula, veja o nome sabendo disso e bata.
Etapa 2 : Descubra os atributos comuns da classe (variáveis de membro)
public static class Car{ //类声明 String name;//成员变量定义 String color = "blue"; int price; /**声明成员变量的格式为: *[访问权限修饰符] [修饰符] type attr_name [=defaultVaule]; */ public static void start(){ //方法声明 System.out.println("汽车启动"); } public static void stop(){ System.out.println("汽车停止"); } }
Etapa 3 : Descubra o método da aula
public class Car{ //成员变量定义 String name; //名称 String color; // 颜色 float price;//价格 /*方法声明格式为: [访问权限修饰符] [修饰符]/ void start(){ System.out.println("汽车启动"); [return 返回值;] */ } }
-
Objetos Java
Objeto: um objeto é uma instância de uma classe, uma instância tangível criada na memória pela classe como um modelo.
Armazene na memória.
Criação e uso de objetos
Criação e uso de objetos
public static void main(String[] args) { /* 创建汽车对象 以Car类为模板. Car c = new Car();new 关键词 +默认构造方法(); 在内存中为Car创建对象c ,c是实例化对象; Car c以Car类作为类型声明一个变量,指向内存空间中的具体的对象. 使用c变量访问对象中属性,方法 通过类可以创建无数个对象 * */ ClassDemo.Car c = new ClassDemo.Car(); c.start(); c.stop(); String b = c.color; System.out.println(b); c.name="宝马"; c.price=70000; }
public static class Car{ //类声明 String name;//成员变量定义 String color = "blue"; int price; public static void start(){ //方法声明 System.out.println("汽车启动"); } public static void stop(){ System.out.println("汽车停止"); } }
Use a nova palavra-chave para criar um objeto.
Use objeto (referência). Variáveis de membro para se referir às variáveis de membro do objeto.
Use o objeto (referência). Método para chamar o método do objeto.
Cada objeto da mesma classe possui um espaço de armazenamento de variável de membro diferente.
Cada objeto da mesma classe compartilha os métodos dessa classe.
-
Classes e objetos
Uma classe é um conceito abstrato de uma classe de negócios e um modelo.
Objetos são existências concretas criadas por este modelo e são instâncias reais de existência.
Portanto, o processo de criação de um objeto também é chamado de instanciar um objeto.
Na vida real, existem objetos primeiro e depois classes e, ao programar, você primeiro projeta classes e, em seguida, cria objetos
-
Classificação de variável
Uma classe pode conter os seguintes tipos de variáveis:
Variáveis de membro:
Variáveis de membro são variáveis definidas na classe e fora do corpo do método.
Variáveis de membro podem usar qualquer tipo de dados na linguagem Java (incluindo tipos básicos e tipos de referência).
Variáveis de membro são copiadas da classe para o objeto quando o objeto é criado.
Variáveis de membro podem ser acessadas por métodos de classe, construtores e blocos de instrução de classe específicos.
O escopo de trabalho das variáveis de membro é todo o corpo da classe.
Variáveis locais:
As variáveis definidas em métodos, construtores ou blocos de instrução são chamadas de variáveis locais.
Variáveis locais podem usar qualquer tipo de dados na linguagem Java (incluindo tipos básicos e tipos de referência).
As variáveis locais devem ser inicializadas e atribuídas antes de serem usadas.
A declaração e a inicialização da variável estão no método, e a variável será destruída automaticamente após o término do método.
Variáveis de classe: (também chamadas de variáveis estáticas) As variáveis de classe também são declaradas na classe, fora do método, mas devem ser declaradas como tipos estáticos.
-
método
Uma classe pode conter os seguintes tipos de métodos:
** Método membro: ** Método membro é definido na classe, este método é criado quando o objeto é criado.
Formato de sintaxe:
Tipo de valor de retorno do modificador / nome do método vazio (lista de parâmetros) {
Declaração do corpo do método:
[Valor de retorno de retorno]
}
** Método de construção: ** O método usado para criar o objeto.
Método de classe: (também chamado de método estático) O método de classe também é declarado na classe, mas deve ser declarado como tipo estático.
public static class Car{ //类声明 String name;//成员变量定义 String color = "blue"; static int price ;//类变量 public void stop(){ //方法声明 成员方法 } public static void start(){ //方法声明 ,类方法 int a= 0;//局部变量,必须赋值 } public Car(){ //构造方法 System.out.println("构造方法1"); }
Método de construção
O construtor é um método definido em uma classe Java para criar um objeto.
O nome do construtor é igual ao nome da classe, não há valor de retorno e a modificação void não é necessária.
Use new + constructor para criar um novo objeto. Ao criar um objeto, pelo menos um construtor deve ser chamado.
Uma classe pode ter vários construtores.
Cada classe tem um construtor. Se não houver um construtor explícito para a classe, o compilador java fornecerá um construtor padrão para a classe, mas desde que um construtor seja definido em uma classe Java, o padrão é nenhum O método de construção do parâmetro é inválido.
Sobrecarga de método
A sobrecarga de método se refere a vários métodos com o mesmo nome, mas parâmetros diferentes podem ser definidos em uma classe.
Ao chamar, o método correspondente será selecionado de acordo com diferentes tabelas de parâmetros.
Sobrecarga de método
1. Na mesma classe
2. Mesmo nome de método
3. Parâmetros diferentes (quantidades diferentes, tipos diferentes e ordens diferentes)
Nota: A sobrecarga do método não tem nada a ver com o tipo de valor de retorno e as permissões de acesso do método.
Por exemplo:
public static class Car{//类声明 String name;//成员变量定义 String color = "blue"; public Car(){ System.out.println("构造方法1"); } public Car(int a){ System.out.println("构造方法2"); } public Car(int a , String b){ System.out.println("构造方法3"); } }