码迷,mamicode.com
首页 > 其他好文 > 详细

第4节 类和对象

时间:2019-03-07 00:44:35      阅读:196      评论:0      收藏:0      [点我收藏+]

标签:返回   print   封装对象   访问   有一个   sys   参数类型   pack   静态   

一、Java 对象和类

  1. 面向对象语言三大特性:封装、继承、多态;
  2. 对象:描述客观事物的一个实体;
  3. 类:类是封装对象的属性和方法的载体,反过来说具有相同属性和行为的一类实体被称为类;类行为:方法;属性:成员变量
  4. 定义类:
    [访问修饰符] class 类名{   //class是声明类的关键字,类名首字母大写
      //代码
    }
  5. java中权限修饰符
    访问位置 private protected public
    本类
    同包或其他子类 ×
    其他包的类或子类 × ×
  6. 定义属性:
      [访问修饰符]   数据类型 属性名;
  7. 定义成员方法:
    [权限修饰符] 返回值类型 方法名(参数类型 参数1名,....){
      //方法体
      return 返回值;    //若无返回值,此句可以不写(但仍可以用return ;退出该方法),并用void关键字声明返回值类型
    }
    注:访问修饰符可选;
      参数列表可选;

二、创建和使用对象

  • 声明:声明一个对象,包括对象名称和对象类型。
  • 实例化:使用关键字new来创建一个对象。
  • 初始化:使用new创建对象时,会调用构造方法初始化对象。
  • 类名  对象名 = new 类名();
             new是关键字     类名()为对象的构造方法      
    public class Puppy{ 
      int puppyAge;    //成员变量
      public Puppy(String name){ 
          // 这个构造器仅有一个参数:name 
            System.out.println("小狗的名字是 : " + name ); 
           } 
            public void setAge( int age ){ 
                puppyAge = age; 
            } 
            public int getAge( ){ 
              System.out.println("小狗的年龄为 : " + puppyAge ); 
              return puppyAge; 
            } 
            public static void main(String []args){ 
                /* 创建对象 */ 
               Puppy myPuppy = new Puppy( "tommy" );
               /* 通过方法来设定age */ 
               myPuppy.setAge( 2 );
               /* 调用另一个方法获取age */ 
               myPuppy.getAge( ); 
               /*你也可以像下面这样访问成员变量 */ 
               System.out.println("变量值 : " + myPuppy.puppyAge ); 
            } 
    }       
    结果:
    小狗的名字是 : tommy
    小狗的年龄为 : 2
    变量值 : 2
  • 使用对象:对象.属性   对象.方法名
  • 对象数组:对象数组的数据类型就是具体的类名,对象数组存储的就是这个类的对象,每个元素就是一个对象。
  • 源文件声明规则:

    • 一个源文件中只能有一个public类
    • 一个源文件可以有多个非public类
    • 源文件的名称应该和public类的类名保持一致。例如:源文件中public类的类名是Employee,那么源文件应该命名为Employee.java。
    • 如果一个类定义在某个包中,那么package语句应该在源文件的首行。
    • 如果源文件包含import语句,那么应该放在package语句和类定义之间。如果没有package语句,那么import语句应该在源文件中最前面。
    • import语句和package语句对源文件中定义的所有类都有效。在同一源文件中,不能给不同的类不同的包声明。Java包

三、方法的重载(不同于重写即覆盖,后面会说到)

  方法重载即在同一个类中允许同时存在一个或多个同名方法,构成重载的条件:1.参数类型不同;2.参数顺序不同;3.参数个数不同;

  注意:方法的返回值类型不能作为判断是否重载的依据;
     可以定义不定长参数方法:返回值  方法名(数据类型 ... 参数名称)      例如:void main(int[ ] a){....} 

package cn.galc.test;
public class TestOverLoad {
  void max(int a, int b) {
    System.out.println(a > b ? a : b);
  }
  /*int max(int a, int b) { 
    return a > b ? a : b; 
  }*/
  void max(float a, float b) {
    System.out.println(a > b ? a : b);
  }
}

四、this关键字

 

五、构造方法

 

六、静态常量、变量和方法

 

第4节 类和对象

标签:返回   print   封装对象   访问   有一个   sys   参数类型   pack   静态   

原文地址:https://www.cnblogs.com/yutianbao/p/10480806.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!