java类能用什么修饰 java中类修饰符有哪些
大家好,感谢邀请,今天来为大家分享一下java类能用什么修饰的问题,以及和java中类修饰符有哪些的一些困惑,大家要是还不太明白的话,也没有关系,因为接下来将为大家分享,希望可以帮助到大家,解决大家的问题,下面就开始吧!
java中类修饰符有哪些
1.class不加修饰符的时候即直接声明 class A{}
在这种情况下,class前面没有加任何的访问修饰符,通常称为“默认访问模式”,在该模式下,这个类只能被同一个包中的类访问或引用,这一访问特性又称包访问性。
2.类修饰符:
(1)public(访问控制符),将一个类声明为公共类,他可以被任何对象访问,一个程序的主类必须是公共类。
(2)abstract,将一个类声明为抽象类,没有实现的方法,需要子类提供方法实现。
(3)final,将一个类生命为最终(即非继承类),表示他不能被其他类继承。
3.成员变量修饰符:
(1)public(公共访问控制符),指定该变量为公共的,他可以被任何对象的方法访问。
(2)private(私有访问控制符)指定该变量只允许自己的类的方法访问,其他任何类(包括子类)中的方法均不能访问。
(3)protected(保护访问控制符)指定该变量可以别被自己的类和子类访问。在子类中可以覆盖此变量。
(4)friendly,在同一个包中的类可以访问,其他包中的类不能访问。
(5)final,最终修饰符,指定此变量的值不能变。
(6)static(静态修饰符)指定变量被所有对象共享,即所有实例都可以使用该变量。变量属于这个类。
(7)transient(过度修饰符)指定该变量是系统保留,暂无特别作用的临时性变量。
(8)volatile(易失修饰符)指定该变量可以同时被几个线程控制和修改。
4.方法修饰符:
(1)public(公共控制符)
(2)private(私有控制符)指定此方法只能有自己类等方法访问,其他的类不能访问(包括子类)
(3)protected(保护访问控制符)指定该方法可以被它的类和子类进行访问。
(4)final,指定该方法不能被重载。
(5)static,指定不需要实例化就可以激活的一个方法。
(6)synchronize,同步修饰符,在多个线程中,该修饰符用于在运行前,对他所属的方法加锁,以防止其他线程的访问,运行结束后解锁。
(7)native,本地修饰符。指定此方法的方法体是用其他语言在程序外部编写的。
扩展资料:百度百科-java关键字
参考资料:百度百科-修饰符
JAVA中定义类头时能使用的修饰符是什么
有public,static,abstract,protected这几种修饰符。
public
使用对象:类、接口、成员
介绍:无论它所处在的包定义在哪,该类(接口、成员)都是可访问的
static
使用对象:类、方法、字段、初始化函数
介绍:成名为static的内部类是一个顶级类,它和包含类的成员是不相关的。静态方法
是类方法,是被指向到所属的类而不是类的实例。静态字段是类字段,无论该字段所在的类创建了多少实例,该字段只存在一个实例被指向到所属的类而不是类的实例。初始化函数是在装载类时执行的,而不是在创建实例时执行的。
abstract
使用对象:类、接口、方法
介绍:类中包括没有实现的方法,不能被实例化。如果是一个abstract方法,则方法体
为空,该方法的实现在子类中被定义,并且包含一个abstract方法的类必须是一个abstract类
protected
使用对象:成员
介绍:成员只能在定义它的包中被访问,如果在其他包中被访问,则实现这个方法的类
必须是该成员所属类的子类。
在java中一个类的修饰符有哪些
一:访问修饰符:
1.省略访问修饰符
具有默认的访问特性,即具有包访问特性,只能被同一个包中的类使用。
2.public访问修饰符
用于说明类和类的成员的访问权限。这种类叫公有类。在一个文件中只能有一个public类型的类。
例如:Rect和UseImport两个类,分别在两个不同的包中。顺便回顾一下不同类要用import导入。(哎,一直就没记住)
//Rect.java
pacakage my;
public class Rect
{
private int a,b;
public void init(int len,int width)
{
a=len;
b=width;
}
public int area()
{
return a*b;
}
}
//UseImport.java
import.my.*;//导入my包的所有类
public class UseImport
{
public static void main(string[] args)
{
Rect x=new Rect();
x.init(2,3);
System.out.println("矩形面积为:"+x.area());
}
}
3.private
用private修饰的类成员成为私有成员,只能在声明该成员的类中使用,不能在类外使用。一般通过本类中公有方法进行访问。
4.protected
protected修饰的类成员为保护成员,可以被三种类使用,分别是该类本身,该类的所有子类,该类同包的其他类,该类的子类。
5.private protected
私有保护成员。可被两种类使用。分别是:该类本身和该类的所有子类。
二:特征修饰符
1.abstract:抽象
修饰类为抽象类,修饰方法为抽象方法。只要类中有抽象方法,就必须定义为抽象类。抽象方法只能声明,不能实现。但是可以在其子类中对抽象方法进行实现。抽象类中也可以包含非抽象方法。
2.final:最终
修饰的类为终止类,不能有子类。修饰变量为终止变量,只可赋值一次。修饰方法为终止方法,不能在子类中更改。如Socket、ServerSocket等都是final类,防止黑客派生子类进行破坏。同时,final与abstract是相互矛盾的。
3.static:静态
静态成员无需通过对象调用,可以直接通过类名直接调用。
public class RectArea//输出6和 12
{
public static void main(String[] args)
{
System.out.println(area(2,3));
System.out.println(area(3,4));
}
static void area(int a,int b)
java中有几种修饰符
java中的修饰符分为类修饰符,字段修饰符,方法修饰符。根据功能的不同,主要分为以下五种。
1、权限访问修饰符
public,protected,default,private,这四种级别的修饰符都可以用来修饰类、方法和字段。
2、final修饰符
final的意思是不可变,他可以修饰类、字段、方法。修饰类后类不能被扩展(extends),也就是不能被继承。修饰字段后字段的值不能被改变,因此如果有final修饰字段,应该对字段进行手动初始化。修饰方法后该方法不能被改变,也就是重写。
3、abstract修饰符
abstract是抽象的意思,用来修饰类和方法,修饰类后,该类为抽象类,不能被实例化,必需进行扩展。修饰方法后,该方法为抽象方法必须被子类重写(override)。
4、static修饰符
static用来修饰内部类,方法,字段。修饰内部类说明该内部类属于外部类而不属于外部类的某个实例。修饰字段说明该字段属于类而不属于类实例。修饰方法说明该方法属于类而不属于类实例
5、volatile修饰符
易失(共享)域修饰符 volatile是用来说明这个成员变量可能被几个线程所控制和修改。也就是说在程序运行过程中,这个成员变量有可能被其它的程序影响或改变它的取值。
扩展资料:
修饰符的特点:
static是一个修饰符,用于修饰成员(成员变量和成员函数)
静态成员随着类的加载而加载。静态成员优先于对象存在。静态成员被所有对象所共享静态成员多了一个中调用方式,可以被类名直接调用。
使用的注意事项:
静态方法只能访问静态成员,非静态方法既可以访问静态又可以访问非静态。静态方法中不可以定义this,super关键字。因为this代表是对象。而静态存在时,有可能没有对象。所以静态方法运行时,this是没有任何对象代表的。
简单说,先进内存的数据不可以访问后进内存的数据,可是后进内存数据可以访问先进内存的数据。主函数是静态的。
OK,本文到此结束,希望对大家有所帮助。