• 面向对象程序设计<-->类和对象


                                类是对象的抽象,对象是类的实例

    package cn.happy;
    
    public class MyMain {    
        public static void main(String[] args) {
            //向JVM索要一条狗
            //d1对象名 
        /*    Dog d1=new Dog();
            d1.name="贝贝";
            //实例化一个对象
            Dog d2=new Dog();
            d2.name="大黄";*/
            
            Person p1=new Person();
            p1.name="张靓颖";
            p1.age=20;
            
            Person p2=new Person();
            p2.name="巩俐";
            p2.age=30;
            
            Person p3=new Person();
            p3.name="凤姐";
            p3.age=50;
            
            
        }
    
    }
    package cn.happy;
    /**
     * 人类
     * @author Happy
     *
     */
    public class Person {
       public String name;
       public int age;
       public String gender;
       
    }
    package cn.happy;
    /**
     * 我的第一个类
     * @author Happy
     *
     */
    public class Dog {
       //成员变量
        public String name;
        
        //成员方法
    }
    1.带参方法
    public String test(String name){
         return name+"BDQN";
    }
    
    2.多个参数  查找指定区间  指定名称的学生
    public boolean findStudent(String name,int startPos,int endPos){
    
       boolean flag=false;
       for(int i=startPos-1;i<=endPos-1;i++){
           if(name.equals(names[i])){
              flag=true;
              break;
           }
       }
       if(flag){
          找到了
       }
    }
    
    3.参数是一个数组
      public int[] changeValue(int[] nums){
         for(int i=0;i<nums.length;i++){
            nums[i]=nums[i]*2;
         }
         return nums;
      }

    掌握构造方法及其重载

    new关键之的3个作用:
    1.开辟空间 向jvm索要空间
    1.创建对象。
    3.调用构造。

    1.在同一个类中,方法名称和类名相同,没有任何返回值类型的结构就是构造。
    2.this代表当前类的实例
    3.什么时候要用this?
    当方法参数变量名和类的成员变量名称相同的时候,一定要使用this.


    方法重载(overload)
    1.在同一个类中
    2.方法名称相同
    3.参数列表不同
    4.和方法本身的返回值没有一毛钱关系

    package cn.happy4;
    
    public class Dog {
       
        
        //设计的最高高度,只关注有用的。
        
        
        //列表不同:个数不同 ,顺序不同,类型不同
       /* public String eat(int age,String name){
            return "";
        }
        
        public void eat(String name,int age){
            
        }
        */
        
        
        public void eat(String name){
            
        }
        
        public void eat(int age){
            
        }
    
    
        
        
        
        
        /*public String eat(){
            return "";
        }
        
        public void eat(String name){
            
        }
    */
        
        
        
        
    }
    package cn.happy4;
    
    public class MyMain {
    
        /**
         * @param args
         */
        public static void main(String[] args) {
          Dog dog=new Dog();
         
    
        }
    
    }
  • 相关阅读:
    2020牛客暑期多校训练营(第一场)I 1or 2题解
    5-23ACM训练题解(NWERC 2019)
    5-20ACM训练题解(2017-2018 ACM-ICPC Pacific Northwest Regional Contest)
    5-6ACM训练题解(2019 Russia Team Open Contest)
    5-2ACM训练题解(Asia Nakhon Pathom Regional Contest)
    4-30ACM训练题解(ICPC Asia Taipei-Hsinchu Contest)
    4-22ACM训练题解(ZOJ Monthly Jan 2019)
    「学习笔记」子序列自动机
    「学习笔记」后缀自动机
    「学习笔记」后缀数组
  • 原文地址:https://www.cnblogs.com/bocai2010000/p/6729307.html
Copyright © 2020-2023  润新知