一、访问限定符
1.public 公有的
能够访问整个项目中的被定义为public的类
2.protected 受保护的
能够访问整个包下被定义为public的或protected的类
3.默认的
介于protected与private之间,能够访问本类或子类
4.private 私有的
只能访问本类
例:
package cn.netjava.test
//定义一个public类
public class Student{
//程序开始
public static void main(String [] asd){
//创建对象
Student1 stu = Student1();//right
Student2 stu1 = new Student2();//error
Student3 stu2 = new Student3();//right
Student4 stu3 = new Student4();//error
Student5 stu5 = new Student6();//error
}
}
//在同一个包下定义一个protected类
protected class Student3{
}
//在同一个包下定义一个默认类
class Student4{
}
private class Student5{
public static void main(String [] asd){
Student5 stu6 = new Student7();//right
}
}
package cn.net.java.test1
//在另一个包下定义一个public类
public class Student1{
public static void main(String [] asd){
Student3 stu4 = new Student5();//error
}
}
//定义一个protected类
protected class Student2{
}
二、关键字this和super
1.关键字this
(1)
指代当前对象
public void study(String name){
this.name = name;
System.out.println{this.getname()+"在学习中"};
}
(2)调用构造器
public void study(){
this(name);
System.out.println{"学习中"};
}//right
public void study(){
System.out.println{"学习中"};
this(name);
}//error,调用其他构造器的语句只能写在第一行
public void study(String name){
}
public void study(String name,int time){
}
2.
关键字super
调用父类中的方法,构造器
public class UNStudent extends Student{
public static void main (String [] asd){
public UNStudent(){
super();
super.study();
}
}
}
三、关键字final
1.
类被定义为final则该类不能被继承
public final class Student{
}
public class UNStudent extends Student{}//error
2.
属性或变量被定义成final,则该属性或方法只能被赋一次值
public class Student {
public static void main(String [] asd){
final private name;
name = "xx";//right
name = "yy";//error
final int time = 2;//right
time = 3;//error
}
}
3.
方法被定义为final,则该方法不能被重写
public class Student {
public static void main(String [] asd){
final public void study(){
}
}
}
public class UNStudent extends Student{
public static void main(String [] asd){
final public void study(){
System.out.println{"在学习"};//error
}
}
}
四、关键字static
static是静态的意思,java在装载一个类时,首先会装载静态区,然后再装载非静态区,而且被定义为静态的函数可以用类名去调用
public class A {
public A(){
System.out.println("A");
}
}
public class B extends A{
public B(){
System.out.println("B");
}
}
public class C {
static A a = new A();
B b = new B();
/**
* @param args
*/
public static void main(String[] args) {
C.change();
}
public static void change(){
B b1 = new B();
}
}
最终输出的结果是:AAB
分享到:
相关推荐
首先,理清几个概念:项目(project)、解决方案(solution)、程序集(assembly)、命名空间(namespace)。 项目(project) 就是我们开发的一个软件。.NET下,项目有多种类型,如控制台、Windows应用程序、类库...
在SQL中,掌握一些小巧但常用的关键字能极大地提高编写查询的效率和代码的可读性。本文将重点介绍三个这样的关键字:起别名、消除重复记录以及连接结果集。 首先,起别名是SQL中一个非常实用的功能,尤其是在处理...
在 Java 编程语言中,`this` 关键字是一个非常重要的概念,它用来引用当前对象的实例。本文将深入探讨 `this` 关键字的三种主要用途,并通过实例代码来解析其工作原理。 首先,`this` 关键字的基本含义是引用当前...
"Java关键字与标识符小结" Java语言中,关键字和标识符是两个重要的概念。关键字是被Java语言赋予了特殊含义的单词,总共有50个。它们被用来定义数据类型、流程控制、访问权限修饰符、类、函数、变量修饰符、类之间...
小结 Keil 中的字体类型和关键字、注释颜色的设置可以根据个人喜好和需求进行自定义设置。通过本文的指导,读者可以轻松地在 Keil 中设置字体类型和修改关键字、注释的颜色,从而提高代码的可读性和美观性。
### 小结 本程序通过C语言实现了多关键字排序的功能,可以有效处理类似高考成绩这样涉及多个排序标准的情况。通过对代码的分析,我们可以了解到如何构建数据结构、如何根据条件进行排序以及如何将结果输出到文件...
在C/C++编程中,`const`关键字是一个非常重要的元素,它用来声明常量和限定变量的可修改性。理解并正确使用`const`能够提高代码的可读性、健壮性和效率。以下是对`const`关键字不同用法的详细说明: 1. **定义常量*...
Java是一种强类型、面向对象的编程语言,它的语法中包含了关键字和保留字,这些词汇具有特殊的含义,用于构建程序的基本结构。本篇文章将详细解析Java的关键字和保留字。 首先,关键字是Java语言中预定义的,有特殊...
### const extern static volatile 小结 #### 一、Const(常量) `const` 关键字在 C/C++ 语言中用于定义常量,即其值在程序运行期间不可更改的变量。`const` 可以与多种数据类型结合使用,例如 `const int x = 10...
### Java语言基础小结 #### 一、JDK, JRE, JVM的关系 - **JVM(Java Virtual Machine)**:Java虚拟机是Java程序跨平台运行的核心,它负责执行Java字节码(.class文件),确保Java程序可以在不同的平台上运行而...
本文介绍C# lock关键字,C#提供了一个关键字lock,它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。 每个线程都有自己的资源,但是代码区是共享...
#### 小结 通过本文的学习,读者应该能够掌握`this`关键字在Java中的基本用法及其应用场景。在实际开发中灵活运用`this`关键字,不仅有助于提高代码的可读性和维护性,还能够避免因变量命名冲突带来的问题。希望...
下面是对"Java中类的继承学习小结"的详细讲解。 首先,类的继承使用关键字`extends`来实现。子类(也称为派生类)声明时,会指定一个父类(或超类): ```java public class DerivedClass extends BaseClass { //...
### Keil C使用经验小结 #### 一、引言 自2004年6月开始接触Keil C以来,随着MUSE项目对8051 MCU的应用日益增多,对于Keil C的理解和实践经验也随之积累。8051 IP在项目的可靠性验证下,未来在更多产品的开发中将...
【Android知识小结第一章】 本章节主要涵盖了Android开发中的一些核心知识点,特别是针对面试中常见的问题进行了总结。以下是对这些知识点的详细解释: 1. 开启多进程:在Android中,可以通过在AndroidManifest....
这篇小结将深入探讨这两个关键概念,以及它们在实际编程中的应用。 首先,类是Java中的蓝图,它定义了一组特性和行为,这些特性和行为共同构成一个特定实体。类可以包含字段(或称为属性),它们代表对象的状态,...
#### 小结 通过以上内容,我们对Java的基础知识有了更深入的理解。了解这些基础知识对于编程非常重要,特别是对于初学者来说。掌握了这些概念后,你可以更好地理解和编写Java代码,同时也能避免一些常见的错误和...