• 变量作用域、构造方法。


    *
    * 构造方法(构造器):是一种特殊的方法,主要用于为成员变量初始化(为成员变量赋初始值)。
    * 特征:方法名必须与类名相同,没有返回值类型。void也是一种返回值类型。
    * 语法: [修饰符] 类名([形参列表])
    *

    * 构造方法使用new关键字调用。
    * 如果没有显式定义构造方法,虚拟机会自动添加无参构造,
    * 但是一旦显式定义了构造方法,虚拟机在编译时将不同添加无参构造(默认无参构造失效),如果需要调用无参构造就必须自己定义。
    * 构造方法是可以重载(方法名相同,参数列表不同)。
    *
    */
    public class Dog {
    public String name;//姓名
    public String bland;//品种
    public int age;//年龄
    public String color;//颜色
    /**
    * 无参构造方法
    */
    public Dog(){

    }
    /**
    * 有参数构造方法
    * @param _name
    * @param _bland
    * @param _age
    * @param _color
    */
    public Dog(String _name,String _bland,int _age,String _color){
    name = _name;
    bland= _bland;
    age = _age;
    color = _color;
    }

    public void showInfo(){
    System.out.println("名字:"+name);
    System.out.println("品种:"+bland);
    System.out.println("年龄:"+age);
    System.out.println("颜色:"+color);
    }
    }

    public class TestDog {
    public static void main(String[] args) {
    // Dog dog = new Dog();
    // dog.name="旺财";
    // dog.age=2;
    // dog.bland="中华田园犬";
    // dog.color="黄色";
    Dog dog = new Dog("旺财", "中华田园犬", 2, "黄色");
    dog.showInfo();
    Dog dog2 = new Dog("大黄", "黑贝", 3, "黑色");
    dog2.showInfo();
    }
    }

    变量声明的位置不同会导致其作用域不同。
    局部变量:在方法内部声明的变量,其作用域仅限于当前方法使用。
    成员变量:在类中声明的属性,其作用域可以在当前类中使用。

    区别:
    1.作用域不同:成员变量的作用域是在整个类体,局部变量的作用域在当前方法
    2.是否有默认初始值:成员变量是有默认的初始值,局部变量没有默认初始值。
    * eg:int类型默认初始值为0 double类型默认初始值为0.0 boolean类型默认为false String默认为null
    * 3.是否能使用修饰符(public/private/protected/默认):成员变量:可以添加public等修饰符,局部变量不能。
    * 4.在内存中保存的位置不同:成员变量保存到堆中,局部变量保存到栈

  • 相关阅读:
    修复grub引导Centos8和Windows
    少儿编程到底学什么?
    Windows平台最方便最易用的法语输入法
    ServiceStack.OrmLite 入门(一)
    起步:Proteus 8 仿真 Arduino 1.8.2
    命令行方式登录PostgreSQL
    CentOS 7 安装 PostgreSQL
    Twitter开源的Heron快速安装部署教程
    centos7下使用yum安装mysql
    [转]centos7 下安装MongoDB
  • 原文地址:https://www.cnblogs.com/benpaozhimeng/p/6977973.html
Copyright © 2020-2023  润新知