首页 > 编程语言 >JAVA语言学习-面向对象(1)

JAVA语言学习-面向对象(1)

时间:2022-11-05 00:00:12浏览次数:43  
标签:JAVA 语言 访问 成员 修饰符 面向对象 实例 Test public

类与对象

类是JAVA语言中重要的复合型数据类型()。类的实现包括两个部分:成员变量和成员方法("方法"可以看作是C语言中的函数)

类的声明

要使用类,首先得对其声明。声明一个类其实就是创建一种新的数据类型。我们利用声明的类来定义类实例,即来获得一个对象。

声明类的语法有

[类修饰符] class <类名>{
  //类的内容
}

例1

public class FirstDemo{  //public为访问控制修饰符,FirstDemo为类名
  private String str;  //str为成员变量
  public void setPrac(String str){  //setPrac为成员方法(下getPrac同)
    this.str=str;
  }
  public String getPrac(){
    return str;
  }
}

类成员的访问控制

  • 访问控制修饰符

类或类的成员需要定义其作用域,即可访问范围。

如例1中"public",它是类FirstDemo的访问控制修饰符,表示类FirstDemo可以被JAVA中的其他类访问使用。

其他常用的访问控制修饰符和其作用域有:

修饰符\可访问范围 同一类 同一包 不同包中的子类 不同包中的非子类
public Y Y Y Y
protected Y Y Y N
default Y Y N N
private Y N N N

("Y"表示YES,即可访问,"N"表示NO,即不可访问。另外子类涉及继承,包和继承的内容之后会有介绍)

  • 类型修饰符

类型修饰符有finalabstractstatic

类型修饰符用以说明类或类的成员的一些特殊性质。final和abstract主要与类的继承性质有关(之后会介绍)

现在主要讲static:

在一个类中,使用static来修饰的变量和方法(类成员)分别称为类(静态)变量和类(静态)方法,没有使用的就称为实例变量和实例方法。

类成员属于这个类而不属于这个类的某个对象,它由这个类所创建的所有对象所共有。实例成员则由每一个对象所独有。

不同对象之间,它们的实例成员互相独立,可以怎么说,任何一个对象改变了自己的实例成员只会影响这个对象本身,而非其他对象中的实例成员。

对实例成员而言,它只能通过对象来访问,而不能通过类名来访问,类成员则可直接通过类名访问。

例2

public class Test{//测试对实例成员和类成员的不同访问形式
  static int i=1;
  int j=1;
  static void printStactic(){
    System.out.println("i="+i);//System.out.println("j="+j);为非法访问
  }
  void print(){
    System.out.println("i="+i);
    System.out.println("j="+j);
  }
  public static void main(String[] args){
    Test.printStatic()//Test.print();为非法访问
    Test.i=2;//Test.j=2;为非法访问
    Test test= new Test();//声明实例化对象test
    test.i=3;
    test.j=3;
    test.print();
    test.printStatic(); 
  }
} 

例2运行结果

i=1

i=3

j=3

i=3

未完待续(内容如有错误请指正)

标签:JAVA,语言,访问,成员,修饰符,面向对象,实例,Test,public
From: https://www.cnblogs.com/pah-ks-blog/p/16859487.html

相关文章