类的访问控制只有public和无修饰符(默认)两种
Java考试复习题

Java考试复习题JAVA程序设计练习一、填空题1、目前Java运行平台主要分为下列3个版本是Java se ,Java ee ,Java me 。
2、SDK平台提供的Java编译器是javac.exe 和Java解释器java.exe 位于Java安装目录的bin 文件夹中。
3、Java运行环境JRE由Java虚拟机、Java的核心类以及一些支持文件组成。
4、一个Java应用程序必须有一个称为主类的类,该类含有public static void main (String args[ ])方法。
5、在源文件的命名中如果源文件中有多个类,那么只能有一个类是public类;如果有一个类是public类,那么源文件的名字必须与这个类的名字完全相同,扩展名是java;6、一个Java Applet源文件不再需要main方法,但必须有且只有一个类扩展了Applet类,我们把这个类称作Java Applet源文件的主类。
7、类是组成Java程序的基本要素。
类封装了一类对象的状态和方法。
8、创建一个对象包括对象的声明和为对象分配成员变量两个步骤,对象的声明的一般格式为:类的名字对象名字;使用new运算符和类的构造方法为声明的对象分配成员变量9、用关键字static修饰的成员变量称作静态变量或类变量,类变量不仅可以通过某个对象访问也可以直接通过类名访问。
10、一个类中的方法可以互相调用:实例方法可以调用该类中实例方法或类方法;类方法只能调用该类的类方法,不能调用实例方法。
11、实例方法可以操作实例变量或类变量;而类方法只能操作类变量不能操作实例变量。
12、this关键字出现在类的构造方法中,代表使用该构造方法所创建的对象;this 关键字出现在类的实例方法中,代表使用该方法的当前对象。
13、成员变量在整个类内有效,局部变量仅在方法内有效,如果在方法内部局部变量的名字与成员变量的名字相同,则成员变量被隐藏,此时若要使用成员变量,格式为:this.成员变量。
java类的访问修饰符总结

java类的访问修饰符总结java的修饰符有:权限修饰符:public、protected、default、private修饰符:abstract、static、finalpublic 使用对象:最广,类、接口、变量、方法protected使用对象:变量、方法注意:不能修饰类(外部类)default 使用对象:类、接口、变量、方法。
(即缺省,什么也不写)private 使用对象:变量、方法注意:不能修饰类(外部类)abstract使用对象:类、接口、方法static 使用对象:类、变量、方法、初始化函数(注意:修饰类时只能修饰内部类)final 使用对象:类、变量、方法transient:告诉编译器,在类对象序列化的时候,此变量不需要持久保存volatile:指出可能有多个线程修改此变量,要求编译器优化以保证对此变量的修改能够被正确的处理native:用该修饰符定义的方法在类中没有实现,而大多数情况下该方法的实现是用C、C++编写的。
synchronized:修饰方法,多线程的支持类分外部类和内部类,他们的访问控制是相同的吗外部类是相对于内部类而言的,内部类是定义在类里面的类。
外部类的修饰符有:default(缺省,不写):类定义时前面未加任何修饰符,表示同一个包中可见。
public:修饰类时表示该类能被项目中所有类可见abstract:表示是抽象类final:表示类不可以被继承scrictpf:(java关键字) 当对一个类或接口使用 strictfp 关键字时,该类中的所有代码,包括嵌套类型中的初始设定值和代码,都将严格地进行计算。
严格约束意味着所有表达式的结果都必须是 IEEE 754 算法对操作数预期的结果,以单精度和双精度格式表示内部类又分:成员内部类、局部内部类、静态内部类、匿名内部类成员内部类:作为外部类的一个成员存在,与外部类的属性、方法并列局部内部类:定义在外部类的方法体里面的类静态内部类:使用static修饰的内部类匿名内部类:就是没有名字的内部类成员内部类修饰符有:public:protected:private:private不能修饰外部类,abstract:final:static:可以当做普通类使用,而不用先实例化一个外部类。
黑马程序员-C#学习笔记(二)

⿊马程序员-C#学习笔记(⼆)-C# 学习笔记⼀、变量与表达式1.变量第⼀个字母必须是字符、下划线或@,其后就可以字符、数字、下划线。
2.字⾯值(1)double为浮点默认字⾯值,在给float或decimal浮点型赋值时要加f/F或m/M。
3。
表达式Char变量实际存储的是数字,所以把两个char变量加在⼀起会得到⼀个数字。
⼆、流程控制2.Switch在C#中,执⾏完⼀个Case语句后,不能进⼊下⼀个Case语句,⽽就加个break或return 或goto语句,如若不然会报错!但是有个例外,如果把多个Case语句放在⼀起,但是前⾯的Case语句没有执⾏体,只有最后⼀个Case语句有执⾏体,实际是⼀次检查多个条件。
也即只要其中有⼀个符合,那么最后⼀个Case语句的执⾏体就会执⾏!例:Case <comparison X>:Case <compareson Y>:<code>Break;这⾥的X或Y必须是常量(字⾯值或字符常量)。
3.foreach语句可以⽤foreach来查找string,可以⽤索引访问其字符。
Froeach(char c in mStrings){}三、变量的更多内容1.显式转换(1)⽤Checked和uncheked检测表达式的溢出,也就是将数据类型转换为另⼀种数据类型时,可以知道是否有数据丢失。
(2)Convert命令显⽰转换时,它总是检测溢出的。
(3)⽐Int类型低的整数类型(char,byte,shor等),进⾏运算后提升为int类型,所以必须⽤int或Long等长整数类型来保存结果(当然⽤浮点也可以的)。
⽽针对float和double不会出现这种情况,float运算可以⽤float类型存值。
(4)变量在赋值后,这个变量才拥有内存空间,如果这种占据内存空间插座在循环中发⽣,该值实际上定义了⼀个局部值。
在循环外部会超出作⽤域。
⼀般情况下,最好在声明和初始化所有的变量后,再在代码中使⽤它们。
Java单选题详解

Java单选题详解Java单选题详解1、()符号是lambda表达式的操作符?A)--> B)?C)! D)&答案:A2、()协议是面向连接的传输层协议A)UDP协议 B)TCP协议C)端口 D)枚举类型答案:B3、下面()类是属于容器类?A)Math B)ObjectC)ArrayList D)Exception答案:C4. Thread类中能让线程体进行休眠的方法是A)start() B)resume()C)sleep() D)wait()答案:C5.以下()类是属于异常类或其子类?A)Thread B)ArrayIndexOutOfBoundsException C)FileInputStream D)FileOutputStream答案:B6.以下属于JDBC相关类的是():A)Connection B)JFrameC)JMenu D)JPanel7.以下()项不是JDBC与数据库连接的协议A)JDBC-ODBC桥驱动程序 B)JDBC网络纯Java驱动程序C)本地协议的纯Java驱动程序 D)ODBC答案:D一、单选题 (本大题共100题, 小计100.0分)1. 访问权限修饰符有public、private、protected和默认修饰符(没有写任何修饰符),他们既可以用来修饰类,也可以用来修饰类中的成员,使用private修饰符的成员可见情况有()A、同一类[正确选项]B、不同包中的子类 ;C、同一包中的非子类 ;D、同一包中的子类 ;参照答案:A2.下列关于变量的叙述哪个是错的?()A、局部变量在使用前必须被初始化 ;B、实例变量是类的成员变量 ;C、实例变量用关键字static声明;D、在方法中定义的局部变量在该方法被执行时创建 ;参照答案:C在类的声明中,属性是用变量来表示的。
这种变量就称为实例变量,是在类声明的内部但是在类的其他成员方法之外声明的。
类的每个对象维护它自己的一份实例变量的副本。
JAVA中的修饰符使用说明

武汉理工大学学生实验报告书实验课程名称 Java修饰符的使用说明开课学院计算机科学与技术学院学生姓名谷鹏学生专业班级软件所以SY001班2012 —2013 学年第一学期JA V A修饰符:1类的修饰符:类的修饰符可分为:可访问控制符和非访问控制符两种。
可访问控制符是:公共类修饰符public非访问控制符有:抽象类修饰符abstract ;最终类修饰符final1)公共类修饰符public :Java 语言中类的可访问控制符只有一个:public 即公共的。
每个Java 程序的主类都必须是public 类作为公共工具供其它类和程序使用的应定义为public 类。
2 )抽象类修饰符abstract :凡是用abstract 修饰符修饰的类,被称为抽象类。
所谓抽象类是指这种类没有具体对象的一种概念类。
这样的类就是Java 语言的abstract 类。
3 )最终类修饰符final :当一个类不可能有子类时可用修饰符final 把它说明为最终类。
被定义为final 的类通常是一些有固定作用、用来完成某种标准功能的类。
4 )类缺省访问控制符:如果一个类没有访问控制符,说明它具有缺省的访问控制符特性。
此时,这个类只能被同一个包中的类访问或引用。
这一访问特性又称为包访问性。
2 .域的控制修饰符也分为:可访问控制符和非访问控制符两类。
可访问控制符有 4 种:公共访问控制符:public ;私有访问控制符:private ;保护访问控制符:protected ;私有保护访问控制符:private protected。
非访问控制符有 4 种:静态域修饰符:static ;最终域修饰符:final ;易失( 共享) 域修饰符:volatile ;暂时性域修饰符:transient。
(这里主要讨论static和final)1 )公共访问控制符public :用public 修饰的域称为公共域。
如果公共域属于一个公共类,则可以被所有其它类所引用。
java基础笔试题(答案已整理)

java基础笔试题(答案已整理) Java基础试题一、选择题(1*30=30)1.Java提供哪几种运算符?(多选)A)算术运算符 B)位运算符 C)关系运算符 D)逻辑运算符 E)条件运算符ng包的哪个方法比较两个对象是否相等返回true?(b)A: toString() B: equals() C: compare() D: 以上都不正确3.下列对Java的变量与函数说法正确的是?(多选)A)变量是用来保存数据的 B)变量是用来实现操作过程的 C)函数是用来实现操作过程的 D)函数是用来保存数据的E)函数的参数是数据的入口4.已知:int[] a = new int[100];在下列给出的数组元素中,非法的是?(d)A: a[0] B: a[1] C: a[99] D: a[100]5.在Java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数、类型或顺序各不相同,传值也可以各不相同。
这种面向对象程序的特性称为?(c)A: 隐藏 B: 覆盖 C: 重载 D: Java不支持此特性6.()是一组常量和抽象方法的集合。
(d)A: 实例 B: 类 C: 包 D: 接口7.下面关于数组说法正确的是?(多选)A)一维数组实质上是相同类型变量的列表 B)创建一个数组首先定义数组变量所需的类型 C)char c[]=new char[26];可声明一个含有26个元素的char型数组 D)当为一个多维数组的时候分配内存时,仅需要为第一维指定内存,然后再分配其他维的存 E)int twain[][] = new int[4][5];可声明一个二维数组8.Java源文件和编译后的文件扩展名分别为?(b)A:。
class和.java B:。
java和.class C:。
class和.class D:。
java和.java9.设x=5,则y=x--和y=--x的结果,使y分别为?(c)A: 5,5 B: 5,6 C: 5,4 D: 4,410.若x是float类变量,x=10/4,则x的值是?(b)A: 2 B: 2.0 C: 2,5 D: 编译错误11.下面方法中,用于调度线程使其运行的是?(多选)A。
Java单科测试题(带答案)

Java单科测试题(带答案) Java单科测试题(带答案)一、选择题1.下列哪个选项不是Java的基本数据类型?A. intB. charC. floatD. String答案: D2.以下代码的输出结果是什么?int x = 5;System.out.println(x++);A. 5B. 6C. 4D. 无法确定答案: A3.以下哪个选项可以用来创建一个对象实例?A. new Object()B. Object.create()C. Object.newInstance()D. Object()答案: A4.以下代码的输出结果是什么?String str1 = "Java";String str2 = new String("Java");System.out.println(str1 == str2);A. trueB. falseC. 编译错误D. 运行时错误答案: B5.Java中的继承是通过什么关键字实现的?A. implementB. extendsC. inheritD. subclass答案: B二、填空题1.在Java中,用来捕捉异常的语句块是__________。
答案: try-catch2.Java中的包(package)是用来__________。
答案: 组织和管理类的集合3.在Java中,接口(interface)用来描述一个类应该__________。
答案: 实现哪些方法4.Java中的四大访问控制符分别是__________。
答案: public, protected, private, 默认(无修饰符)5.在Java中,使用__________关键字来创建一个新的线程。
答案: new三、编程题1.编写一个Java程序,输出1到100之间的所有偶数。
答案:public class EvenNumbers {public static void main(String[] args) {for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {System.out.println(i);}}}}2.编写一个Java程序,计算并输出斐波那契数列的前20个数字。
详解Java中的访问控制修饰符(public,protected,default,private)

详解Java中的访问控制修饰符(public,protected,default,private)Java中的访问控制修饰符已经困惑笔者多时,其中较复杂的情况⼀直不能理解透彻。
今天下定决⼼,系统、全⾯地研究Java中的访问控制修饰符的所有⽅⾯,并整理成这篇⽂章,希望有同样疑惑的读者读完后能有所收获。
如果⽂章中出现错误,欢迎评论指出,共同交流~说在前⾯:这篇⽂章只研究Java中访问控制修饰符声明类的变量/⽅法的情况。
先抛出结论:* 成员变量/⽅法的访问权限* private default protected public* ⾃⼰包⾃⼰类 √ √ √ √* ⾃⼰包别的类 √ √ √* 别的包别的类有继承关系②① √* 别的包别的类⽆继承关系 √①:⼦类可以继承,但是不能访问⽗类的成员变量/⽅法(⼀般来说,可以访问就可以继承)。
②:有继承关系说明访问对象所在的类是⽗类。
1. 让我们来看⼀下Java中访问控制修饰符的定义。
Java中,可以使⽤访问控制符来保护对类、变量、⽅法和构造⽅法的访问。
访问的形式有以下四种:· 某个类的成员变量访问某个类的成员变量· 某个类的成员变量访问某个类的成员⽅法· 某个类的成员⽅法访问某个类的成员变量· 某个类的成员⽅法访问某个类的成员⽅法ps:以下代码均以第三种形式为例,其他形式基本⼀致。
根据访问对象的不同,访问的⽅式⼜可划分为两⼤类:· 访问对象在同⼀个类,此时可以通过[成员变量/⽅法的名字]直接访问。
class A {int a = 10;void printA() {System.out.println(a);}}printA()要访问a,因为它们在同⼀个类,所以可以通过a直接访问。
· 访问对象在不同类(假设访问对象在类B),此时可以通过声明、初始化B的⼀个对象,通过[对象名.成员变量/⽅法的名字]进⾏访问。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
data_a=5
class B extends A { static int data_a=5;} A.data_a=3
class C extends B
{ void print_out()
B.data_a=5
{ System.out.println(“data_a= ”+data_a);
System.out.println(“A.data_a= ”+A.data_a);
public void show)()
{ System.out.println
(“pub_i”+pub_i);
} 整理ppt
3
Java名空间及访问规则
class Demo { public static void main(String args[])
{ ABC abc=new ABC(); System.out.println(“abc.pub_i”+abc.pub_i); abc.pub_i=10; abc.show();
System.out.println
(“abc.pro_i=“+abc.pro_i);
abc.pub_i=10;
abc.show();
}
}
整理ppt
6
Java名空间及访问规则
• 不同包但是是子类
import mytest.pack.ABC;
class DEF extends ABC
{ public static void main(String agrs[])
以直接使用它的数据和方法.
整理ppt
8
Java名空间及访问规则
• 当子类中的变量名与父类的相同,原来的变量 被遮盖.
class demo { public static void main(String args[])
{ C c=new C(); c.print_out(); }}
class A { static int data_a=3;}
}} abc.pub_i=5
pub_i=10;
整理ppt
4
Java名空间及访问规则
• protected变量和方法
• 如果一个类中变量或方法有修饰字
protectpeadc,ka同ge 一my类te,st.p同ac一k;包可以使 用。不p同ub包lic的cl类ass要A使BC用,必须是该 类的子{类pr可ot以ect存ed取in变t p量ro_或i=调5; 用
protected void show()
{ System.out.println
(“pro_i=” +pro_i;)
}
}
整理ppt
5
Java名空间及访问规则
class DEF
• 不同包{中p的ub类lic不sta能tic使vo用id main(String
args[])
{ ABC abc=new ABC();
void show(int int_num)
123
类
1.23 void show(double double_num)
123,1.23
void show(nit nit_ um, float float_um)
整理ppt
10
Java名空间及访问规则
•到此为止-----final •final在方法之前,防止该方法被覆盖. •final在类之前,标是该类不能被继承 •final在变量之前,定义一个常量.
{ DEF def=new DEF();
System.out.println(def.i); pro_i=5
def.i=10; def.show(); } pro_i=10
}
整理ppt
7
Java名空间及访问规则
• private 不允许任何其他类存取和调用
• friendly(前边没有修饰字的情况) 在同一程序包中出现的类才可
return(2*PI*radius); }
public int getRadius(){
return radius; }
public int setRadius(int r){
radius=r; }
}
整理ppt
14
this的用法(使用this来表示“自己”)
default
**
protected * * *
public
***
*
整理ppt
2
Java名空间及访问规则
• 变量和方法的修饰字public、protected、private • public: 任何其它的数据,或 使用方法。
class ABC { public int pub_i=5;
System.out.println(“B.data_a= ”+B.data_a);
整理ppt
9
}}
Java名空间及访问规则
• 方法的覆盖(overriding)和重载(overloading)
• 子孙类中定义的方法和祖先类中某个方法同 名,同参数行,则祖先类中的该方法被覆盖.
• 方法的重载是指一个对象的多态性,即多个方 法用相同的名称,但参数行不同.
} // radius为私有类型,不能被其他类访问 到。
整理ppt
13
通过set和get方法为私有变量radius 赋值和取得其数据。
public class Circle{
static double PI=3.14.5926;
private int radius;
public double circumference(){
2.2.6 类的访问控制
只有public和无修饰符(默认)两种。
类型
无修饰符 public
同一包中的 可访问 类
不同包中的 不可访问 类
可访问 可访问
注意:一个源程序中至多有一个 public共有类,且必整须理ppt 与public类名相同1
2.2.7类成员的访问控制
private
同一 个类
*
同一 不同包 不同包 个包 的子类 非子类
整理ppt
11
一般情况下,我们很少把成 员变量标识为public类型,而使用 private类型。
通过使用类或者对象的set方 法和get方法对成员变量进行修改 或者取得成员变量的值。
整理ppt
12
public class Circle{ static double PI=3.14.5926; private int radius; public double circumference(){ return(2*PI*radius); }