Ao aprender a estrutura de coleta, é fácil para iniciantes praticar exercícios como o sistema de gerenciamento de estudantes e o sistema de gerenciamento de funcionários. Antes de aprender a estrutura de coleta, você basicamente aprendeu a gramática Java básica, e a estrutura de coleção também testa a compreensão do aprendizado anterior do lado. A seguir, é apresentada uma pergunta prática que fiz antes, revise a estrutura da coleção e apresente brevemente a idéia de programação orientada a objetos. Descobri que, quando você olha para trás, entenderá o antigo conhecimento mais detalhadamente. Recentemente consolidou a fundação.
Ferramentas: bloco de notas para facilitar compilação e demonstração
Ambiente: Coloque o código em uma classe (esse hábito é muito ruim)
Objetivo: Revise o conhecimento e compreenda a programação orientada a objetos
Instância de código (dividida em quatro pedaços, basta usá -la diretamente)
1. Pacote de guia
importar java.util.ArrayList; importar java.io.bufferedreader; importar java.io.inputStreamReader;
2. Classe de teste
classe pública Guanli {public static void main (string [] args) lança exceção {// TODO Method Auto-Gerated Stub // Crie um objeto empanage empanage em = new EMPMANAGE (); BufferErader BR = new BufferredReader (new InputStreamReader (System.in)); // Faça um menu simples enquanto (true) {System.out.println ("Por favor, digite a operação que deseja executar:"); System.out.println ("1: significa que você deseja adicionar um funcionário"); System.out.println ("2: significa encontrar um funcionário"); System.out.println ("3: significa modificar o salário dos funcionários"); System.out.println ("4: significa excluir um funcionário"); System.out.println ("5: significa pedir que você sai da operação"); String operatorType = Br.ReadLine (); if (opertype.equals ("1")) {System.out.println ("por favor digite um número"); String num = Br.readline (); System.out.println ("Por favor, digite um nome"); Nome da string = Br.readline (); System.out.println ("Por favor, digite o salário"); float sal = float.parsefloat (B.ReadLine ()); // Neste momento, após inserir informações, o objeto é criado emp2 emp = new emp2 (num, nome, sal); // Adicione -o ao em.addemp (EMP); } else if (opertype.equals ("2")) {System.out.println ("por favor digite o número"); String num = Br.readline (); em.showinfo (num); } else if (opertype.equals ("3")) {System.out.println ("por favor digite o número"); String num = Br.readline (); System.out.println ("Por favor, digite o salário"); float sal = float.parsefloat (B.ReadLine ()); em.Updatesal (num, sal); } else if (opertype.equals ("4")) {System.out.println ("por favor digite o número"); String num = Br.readline (); em.delemp (num); } else if (operType.equals ("5")) {System.exit (0); }}}}3. Categoria de gerenciamento de funcionários (incluindo gerenciamento dinâmico das informações dos funcionários)
// Crie a classe de gerenciamento de funcionários EmpManage {// Defina a classe de coleta (Propriedades) Private ArrayList <EMP2> al = null; // construtor, inicialize a variável de membro public EmpManage () {al = new ArrayList <EMP2> (); } // Método encapsulado // 1. Junte -se a um funcionário public void addemp (emp2 emp) {al.add (emp); } // 2. Mostre informações relacionadas a funcionários public void showInfo (string num) {// atravesse o ArrayList inteiro para (int i = 0; i <al.size (); i ++) {// retire o objeto EMP2 EMP2 EMP = (emp2) al.get (i); // Compare o número se (emp.getnum (). Igual a (num)) {System.out.println ("Encontrando o funcionário, sua mensagem é:"); System.out.println ("Nota:" + emp.getnum ()); System.out.println ("nome:" + emp.getName ()); System.out.println ("sal:" + emp.getsal ()); }}} // 3. Modificando o salário do funcionário (modificando o salário de acordo com o número) //, ou seja, o primeiro parâmetro é o número; O segundo é o salário "novo" enviado pelo usuário public void atualizações (string num, float Newsal) {// Traversal for (int i = 0; i <al.size (); i ++) {emp2 emp = (emp2) al.get (i); // Número do julgamento if (emp.getnum (). Igual a (num)) {// modifica o salário emp.setsal (newsal); }}} // 4. Exclua um funcionário public void delemp (string unm) {// traversal for (int i = 0; i <al.size (); i ++) {emp2 emp = (emp2) al.get (i); if (emp.getnum (). igual a (unm)) {// exclua al.remove (i); // excluir por objeto // al.remove (emp); }}}}4. Categoria de funcionários (incluindo informações básicas sobre funcionários)
// Crie classe de funcionário classe Emp2 {nome da string privada; public String getName () {Return Name; } public void setName (nome da string) {this.name = name; } public string getNum () {return num; } public void setNum (string num) {this.num = num; } public float getSal () {return sal; } public void Setsal (float sal) {this.sal = sal; } // As cartas podem aparecer no número do aluno, por isso é definido como String Private String num; Sal de flutuação privada; // Construtor, um monte de trabalho de inicialização public emp2 (string num, string name, float sal) {this.num = num; this.name = nome; this.sal = sal; }}Aqui, a classe dos funcionários e a classe de gerenciamento de funcionários estão separados e os métodos e atributos são encapsulados de acordo e cada um desempenha suas próprias tarefas.
Na aula de teste, se quisermos usá -la, podemos chamar os métodos da classe, sem nos preocupar com a forma como os métodos são implementados e quais funções estão lá. Esta é uma boa ideia de programação orientada a objetos.
Ao compilar no DOS, verifica -se que todas as classes no arquivo .java serão compiladas em arquivos .class separadamente. Depois de usar o IDE, não prestei atenção nisso.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.