JAVA考试小结

这篇博客总结了JAVA考试中的关键知识点,包括构造方法的定义和特点、static修饰符的使用、private的作用、接口与继承的差异、GUI组件和IO流的区别等。通过对这些概念的深入解析,帮助读者更好地理解和掌握JAVA编程的基础。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

标题

构造方法

以下有关构造方法的说法,正确的是:(A)

A.一个类的构造方法可以有多个

B.构造方法在类定义时被调用

C.构造方法只能由对象中的其它方法调用

D.构造方法可以和类同名,也可以和类名不同

定义
一个在创建对象时自动被调用的特殊方法
作用
为对象进行初始化(成员变量)工作,即初始化类对象的属性,而构造对象是通过new关键字
特征
构造器是一种特殊的方法

1.构造方法的名称必须跟类名保持一致

2.构造方法虽然有返回值(返回一个已经初始化好的对象),但是不能定义返回类型,返回值的类型肯定是本类类型,不能用关键字void,不能在构造器里调用return

3.构造方法在创建类对象的时候通过关键字new被调用
(当我们没有写构造方法的时候,系统会默认给我们添加一个无参构造方法。但是只要我们给出了一个构造方法,系统就不会给出默认的无参构造方法,所以在写类的时候,一般建议自己手动加上无参构造方法)

4.和普通方法一样,构造方法也可以重载

摘自:
某个博客

static修饰

static string singTon;
System.out.println(singTon);

输出null

1.静态字段会进行默认初始化
2.静态方法可以直接调用同类中的静态成员,但是不能直接调用非静态成员
3.在普通成员方法中,则可以直接访问同类的非静态变量和静态变量
4.静态方法中不能直接调用非静态方法,需要通过对象来访问非静态方法

private作用

private是访问控制修饰符,用来使用访问控制符来保护对类、变量、方法和构造方法的访问
在程序中需要隐藏类的实现细节和保护类的数据时,就要使用private来修饰
例如:

public class Logger {  
    private String format;  public String getFormat() {
          return this.format;   
          }
    public void setFormat(String format) {
          this.format = format;  
          }
}

Logger 类中的 format 变量为私有变量,所以其他类不能直接得到和设置该变量的值。
为了使其他类能够操作该变量,定义了两个 public 方法:getFormat() 和 setFormat(String)。

奇妙if

int i = 1;

if(i=1){
         System.out.println(“ok”);
}

编译出错

boolean boo=false;
 if(boo=true){
            System.out.println("a");
 }
 else{
            System.out.println("b");
 }

输出a

接口

interface :接口的关键字
implements:实现接口的关键字

interface A{
      //成员变量
      public  static final int i=10;  //接口中默认有:public static final修饰变量;最终都是常量
      //成员函数
      public void print();
  }
  //Demo11就实现了A接口
  class Demo11  implements A{
 }

abstract class和interface有什么区别。ABD

A、抽象类可以有构造方法,接口中不能有构造方法

B、抽象类中可以有普通成员变量,接口中没有普通成员变量

C、抽象类中不可以包含静态方法,接口中可以包含静态方法

D、一个类可以实现多个接口,但只能继承一个抽象类。

继承

在继承中,关于构造方法的说明,下列说法错误的是(D)

A、子类无条件的继承父类的无参构造方法,

B、子类可以引用父类中的有参构造方法,使用super关键字,

C、如果子类没有构造方法,则父类无参构造方法作为自已的构造方法,

D、如果子类有无参构造方法,而父类的无参构造方法则被覆盖。

杂闻

支持javadoc命令注释形式:/**…*/

java语言使用的字符码集是Unicode

synchronized 关键字可以对对象加互斥锁

在面向对象的方法中,一个对象请求另一个对象为其服务的方式是通过发送消息

编写和运行Java applet程序与编写和运行Java application程序不同的步骤为:编写HTML文件调用该小程序,以.html为扩展名存入相同文件夹

在编写Java applet程序时,若需要对发生事件作出响应和处理,一般需要在程序的 开头写上import java.awt.event.*; 语句

Java的字符类型采用的是Unicode编码方案,每个Unicode码占用16个比特位

在 JAVA编程中,Java编译器会将Java程序转换为字节码

equals和==的区别

== 比较的是变量(栈)内存中存放的对象的(堆)内存地址,用来判断两个对象的地址是否相同,即是否是指相同一个对象。比较的是真正意义上的指针操作
equals用来比较的是两个对象的内容是否相等,由于所有的类都是继承自java.lang.Object类的,所以适用于所有对象

类与对象

类是对象的抽象

实例化一个对象

Object referenceVariable = new Constructor()

抽象方法

关于抽象方法的说法正确的是(D)

(A)可以有方法体

(B)可以出现在非抽象类中

(C)是没有方法体的方法

(D)抽象类中的方法都是抽象方法

GUI

Swing提供3种顶层容器类:JFrame,JDialog,JApplet

Swing与aWT的区别不包括(D)

(A)Swing是由纯Java实现的轻量级构件

(B)Swing没有本地代码

(C)Swing不依赖操作系统的支持

(D)Swing支持图形用户界面

IO

字节流与字符流的区别

1.定义
字节流是一种执行8位字节输入和输出的机制,基本单元为字节;而字符流是Java中执行16位Unicode输入和输出操作的机制,基本单元为Unicode码元
2.结尾
字节流以stream结尾;而,字符流以reader和writer结尾
3.处理方式
字节流是最基本的,采用ASCII编码;它通常用于处理二进制数据,它是按字节来处理的,实际上它可以处理任意类型的数据,但它不支持直接写入或读取Unicode码元。字符流采用Unicode编码,它是按虚拟机的encode来处理,也就是要进行字符集的转化;它通常处理文本数据,它支持写入及读取Unicode码元
4.缓冲区
字节流默认不使用缓冲区;字符流使用缓冲区

为读取的内容进行处理后再输出,需要使用Filter stream流

为实现多线程之间的通信,需要使用Piped stream流

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值