zoukankan      html  css  js  c++  java
  • java总结第二次(剩余内容)//类和对象1

    7.成员变量和局部变量

    成员变量:在类中定义,用来描述对象将要有什么

    局部变量:在类的方法中定义,在方法中保存临时数据

    区别:作用域不同

    局部变量的作用域仅限于定义它的方法

    成员变量的作用域在整个类内部都是可见的

    8.信息的封装和隐藏

     Java中通过将数据声明为私有的(private),再提供公开的(public)方法:getXXXsetXXX实现对该属性的操作,以实现下述目的:

    隐藏一个类的实现细节;

    使用者只能通过事先定制好的方法来访问数据,可以方便地加入控制逻辑,限制对属性的不合理操作;

    便于修改,增强代码的可维护性;

    举例:

    public class Animal{

        private int legs;       将属性legs定义为private

        public void setLegs(int i){  

            if (i != 0 && i != 2 && i != 4){

                System.out.println("Wrong number of legs!");

                return;

            }

            legs=i;

        }

        public int getLegs(){    在这里定义方法

            return legs;

        }

    }

    9.构造器的定义与作用

    构造方法的特征

          当一个类的实例对象刚产生时,这个类的构造方法就会被自动调用,我们可以在这个方法中加入要完成初始化工作的代码。

    构造方法的特征

    与类名相同;

    没有返回值(区别于void)

    举例:

    public class Animal {

    private int legs;

    public Animal() {legs = 4; } 构造器

    public void setLegs(int i) { legs = i; }

    public int getLegs(){return legs;}

    }

    另:默认的构造方法:

    Java语言中,每个类都至少有一个构造方法;

    如果类的定义者没有显式的定义任何构造方法,系统将自动提供一个默认的无参数的构造方法。所以:一个类本身不编写构造方法,依然能用new Xxx()创建该类的实例。

    Java类中,一旦类的定义者显式定义了一个或多个构造方法,系统将不再提供默认的构造方法;

    构造器的主要作用:利用构造器参数初始化对象的属性。

    10.

     

    11.方法的重载

    方法的重载就是在同一个类中允许同时存在一个以上的同名方法,只要它们的参数个数或类型不同即可。 如:

    public class Test{

        public static void main(String [] args){

    int isum;

    double dsum;

    isum=add(3,5);

    isum=add(3,5,6);

    dsum=add(3.2,6.5);

        }

        public static int add(int x,int y)         {  return x+y; }

        public static int add(int x,int y,int z)   { return x+y+z; }

        public static double add(double x,double y){  return x+y; }

    }

    具体要求:

     在同一个类中可以定义多个同名方法

    public class PrintStream{

        public void print(int i) {……}

        public void print(float f) {……}

        public void print(String s) {……}

                }

      重载方法的参数列表必须不同

      重载方法的返回值类型可以相同,也可以不同

      调用时根据方法的参数类型来区别。

         print(3)print(1.2f)print(hello!)

    12.构造方法的重载

    构造方法一般用来在创建对象的同时初始化对象。如

    class Person{

    String name;

    int age;

    public Person(String n , int a){  name=n; age=a;}

    }

    构造方法重载使得对象的创建更加灵活,方便创建各种不同的对象。

    构造方法重载举例:

           public class Person{

        public Person(String name, int age, Date d) {this(name,age);}

        public Person(String name, int age) {}

        public Person(String name, Date d) {}

        public Person(){}

    }

    构造方法重载,参数列表必须不同

    举例:

    public class Person {

        private String name;

        private int age;

        private Date birthDate;

        public Person(String name, int age, Date d) {

             this.name = name;

             this.age = age;

             this.birthDate = d;

         }

         public Person(String name, int age) {

              this(name, age, null);  

         }

         public Person(String name, Date d) {

              this(name, 30, d);    

         }

         public Person(String name) {

             this(name, 30);    

         }

    }

    13.this关键字

    每个成员方法内部,都有一个this引用变量,指向调用这个方法的对象。

    具体实例见上面程序

  • 相关阅读:
    终于决定来博客园了~
    鼠标手势(Mouse Gesture)的C#实现源代码
    一个简单的运算表达式解释器例子
    屏幕截图的实现和源代码
    robots.txt
    Unity 笔记(2) 注入方式
    SQL_索引
    【转载】ASP.NET MVC中你必须知道的13个扩展点
    Chrome 小技巧:如何下载离线版安装文件[转]
    修改VS2010安装时的注册信息
  • 原文地址:https://www.cnblogs.com/zjfjava/p/5820191.html
Copyright © 2011-2022 走看看