java关键字有哪些public_Java中private , public , protected 几个关键字

虽然多线程编程极大地提高了效率,但是也会带来一定的隐患。比如说两个线程同时往一个数据库表中插入不重复的数据,就可能会导致数据库中插入了相同的数据。今天我们就来一起讨论下线程安全问题,以及Java中提供了什么机制来解决线程安全问题。 一、什么

1、关键字 private

class Sundae {

private Sundae() {}

static Sundae makeASundae() {

return new Sundae();

}

}

public class IceCream {

public static void main(String[] args) {

//!Sundae sundae = new Sundae()// 构造器是“私有”的,不能这么访问

Sundae sundae = Sundae.makeASundae();

System.out.println(sundae);

}

}

这个例子向我们证明了使用private 的方便:有时可能想控制对象的创建方式,并防止有人直接访问一个特定的构建器 (或者所有构建器)。在上面的例子中,我们不可通过它的构建器创建一个Sundae 对象;相反, 必须调用makeASundae()方法来实现(注释③)。

③:此时还会产生另一个影响:由于默认构建器是唯一获得定义的,而且它的属性是private,所以可防止

对这个类的继承。

2、关键字 protected

public class Cookie {

public Cookie() {

System.out.println("Cookie construct");

}

void foo() {

System.out.println("foo");

}

}

public class ChocolateChip extends Cookie{

public ChocolateChip() {

System.out.println("ChocolateChip constructor");

}

public static void main(String[] args) {

ChocolateChip x = new ChocolateChip();

//! x.foo();// 不能访问 foo

}

}

对于继承,值得注意的一件有趣的事情是倘若方法foo()存在于类Cookie 中,那么它也会存在于从Cookie继承的所有类中。当类Cookie和类ChocolateChip不在同一个包下时,不能访问foo()方法(同一个包下可以)。当然,亦可将其变成public。但这样一来,由于所有人都能自由访问它,所以可能并非我们所希望的局面。若象下面这样修改类Cookie:

public class Cookie {

public Cookie() {

System.out.println("Cookie construct");

}

protected void foo() {

System.out.println("foo");

}

}

将方法foo()的访问控制权限设置为 protected 时候,Cookie的子类就能在外部包访问foo()方法了。 x.foo();   就不会报错了。 这个时候方法 foo() 方法并不是公开的(public)。

原文: http://www.cnblogs.com/dolphin0520/p/3920373.html Java并发编程:volatile关键字解析    volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: JAVA关键字包括:abstract、continue、for、new、switch、assert、default、goto、package、synchronized、boolean、do、if、private、this、break、double、implements、protected、throw、byte、else、import、public、throws、case、enum、instanceof、return、transient、catch、extends、int、short、try、char、final、interface、static、void、class、finally、long、strictfp、volatile。 ### 回答2: Java关键字是指被Java编程语言保留用于特定用途的词汇,这些关键字具有特殊含义并且不能用作标识符(如变量、类名等)。Java关键字有以下几个: 1. 基础类型关键字:包括byte、short、int、long、float、double、boolean、char等,用于声明基本数据类型的变量。 2. 控制流程关键字:包括if、else、switch、case、default、for、while、do、break、continue、return等,用于控制程序的流程和决策。 3. 修饰符关键字:包括publicprivateprotected、static、final、abstract、synchronized等,用于修饰类、方法和变量的访问权限、行为和特性。 4. 类与对象关键字:包括class、interface、extends、implements、new、this、super等,用于定义类和接口以及操作对象和实例。 5. 异常处理关键字:包括try、catch、finally、throw、throws等,用于处理程序的异常情况。 6. 特殊关键字:包括void、null、true、false等,用于表示一些特殊的值和类型。 7. 保留关键字:包括const、goto等,虽然Java保留了这些关键字,但是并没有被使用。 了解和掌握这些关键字对于编写Java程序和理解Java源代码非常重要,因为这些关键字在语言具有固定的含义和用途。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值