zoukankan      html  css  js  c++  java
  • 一天一个Java基础——对象和类

    1.在Java中你所做的全部工作就是定义类,产生那些类的对象,以及发送消息给这些对象

    2.可以在类中设置两种类型的元素:字段(也被称作数据成员)和方法(也被称作成员函数)

    3.字段可以是任何类型的对象,可以通过其引用与其进行通信;也可以是基本类型中的一种。如果字段是对某个对象的引用,那么必须初始化该引用,以便使其与一个实际的对象向关联(使用new来实现)

    4.可以把两个类放在同一个文件中,但是文件中只能有一个类是公共的。此外,公共类必须与文件同名

    1.1 构造方法构造对象

      构造方法是一种特殊的方法,具有以下三种特殊性:
        1)构造方法必须具备和所在类相同的名字
        2)构造方法没有返回类型,甚至连void也没有
        3)构造方法是在创建一个对象使用new操作符时调用的。构造方法的作用是初始化对象
      构造方法也可以重载,也就是可以有多个同名的构造方法,但它们要有不同的签名

    1.2 访问对象的数据和方法

      若类的某个成员是基本数据类型,即使没有进行初始化,Java也会确保它获得一个默认值(在类中可以声明无初始值的变量,但在方法中不能声明无初始值的临时变量)

      引用类型数据域默认值是null,数值类型默认值是0,boolean类型为false,char为‘u0000’
      但是Java没有给方法中的局部变量赋默认值

      每个变量都代表一个存储值的内存位置,基本类型变量的内存中存储的是一个基本类型值,而引用类型变量存储的是一个引用,它指向对象在内存中的位置

      当引用变量被赋值予另一个新引用后,原来的引用的对象就不再有用,因此就变成了垃圾(garbage),占用了内存空间,所以Java运行系统会检测垃圾并自动回收它所占的空间,这个过程称为垃圾回收(garbage collection)

    1.3 静态变量、常量和方法

      如果想让一个类的所有实例共享数据,就要使用静态变量(static variable),也称为类变量(class variable)。静态变量将变量值存储在一个公共的内存地址。因为它是公共的地址,所以如果某一个对象修改了静态变量的值,那么同一个类的所有对象都会收到影响。Java支持静态方法和静态变量,无须创建类的实例就可以调用静态方法(static method)

     1 public class test2 {
     2     public static void main(String[] args) {
     3         /*
     4          * 类中变量是否为静态的区别
     5          */
     6         Test4 t1 = new Test4();
     7         System.out.println(t1.id);
     8         t1.id = 4;
     9         System.out.println(t1.id);
    10         Test4 t2 = new Test4();
    11         System.out.println(t2.id);
    12     }
    13 }
    14 class Test4{
    15     /* 若为static int id = 1;
    16      * 则运行结果为 1 4 4
    17      */
    18     int id = 1;
    19     /*
    20      * 运行结果为 1 4 1
    21      */
    22     public void a1(){
    23         id++;
    24     }
    25     public void a2(){
    26         id++;
    27     }
    28 }
  • 相关阅读:
    安装了windows mobile 5.0 pocket pc SDK
    落户这里
    NOIP 2021 游记
    log4net重复记日志
    Eclipse中properties文件中文显示编码、乱码问题
    查找包下已经实施的增强
    vs2010 编译 Ogre 1.8 源码
    Ogre 设计模式之Singleton
    23种设计模式的解析与C++实现及源码打包下载
    vs2010 编译 SALVIA源码
  • 原文地址:https://www.cnblogs.com/zhengbin/p/5356946.html
Copyright © 2011-2022 走看看