注:对应问题见上篇博客。

文章目录

  • 一、Java基本语法元素:
  • 二、Java基本控制结构:
  • 三、Java面向对象程序设计:
  • 四、数组和字符串:
  • 五、异常处理:
  • 六、Java IO流:
  • 七、图形用户界面 GUI:
  • 八、Java多线程:

一、Java基本语法元素:

  1. 标识符是由字母、下划线(_)、美元符号($)和数字组成的字符串,首字母不能是数字。
    关键字不能作为标识符;布尔常量true和false不能作为标识符;null不能作为标识符。

  2. Java语言关键字

  3. Java语言的注释:
    (1)单行注释 “//”
    (2)多行注释 “/* … /”
    (3)文档注释 “/
    *… */” 文档注释属于多行注释.

  4. Java数据类型及范围:

  5. 包装类用途:
    (1)作为基本数据类型对应的类,方便设计对象的操作。
    (2)包含基本类型的相关属性以及相关的操作方法。

基本类型 包装类名
byte Byte
short Short
int Integer
long Long
char Character
float Float
double Double
boolean Boolean

(类的首字母大写)

  1. Java中常量:
    (1)整数常量
    (2)浮点常量
    (3)布尔常量(true和false)
    (4)字符常量
    注:简单字符常量是由一对单引号括起来的字符,但不能是(‘)和 ()。单引号和反斜杠需要用转义字符表示,分别为’\’’和’\ ’。
    (5)字符串常量
    (6)null常量

    Java中变量:
    (1)类变量
    (2)实例变量:不使用static修饰的类变量
    (3)阵列组件
    (4)形参
    (5)局部变量

  2. Java运算符:关系运算符、算数运算符、逻辑运算符、赋值运算符

  3. 强制类型转换:从高精度向低精度转换(可能会出现精度损失)如:int a = (int)(5.0/3).
    自动类型转换:从低范围到高范围转换,如double a = 1. (int范围小于double)

二、Java基本控制结构:

  1. 三种控制结构:顺序结构,分支结构,循环结构
  2. if-else语句、switch语句、while语句、do-while语句、for循环语句
    for-each语句:
For(变量类型 变量名:数组/容器)
{循环体语句;
}
  1. switch语句中的控制表达式必须是char、int、short、byte类型的。
    注:在switch(expression)中,expression只能是一个整数表达式或者枚举常量,整数表达式可以是int类型或Integer包装类型。由于byte,short,char都可以隐式转换为int类型,所以,这些类型也可以用作表达式。

三、Java面向对象程序设计:

  1. 类的定义和使用
(修饰符) class 类名 (extends 父类) (implements A,B...){//类主体
}
  1. 如何创建和使用对象:使用new关键字 类名 对象名 = new 类名();

  2. 什么是方法的重载?

    如果同一个类中包含了两个或两个以上方法名相同,方法参数的个数、 顺序或类型不同的方法,则称为方法的重载,也可称该方法被重载了。
    只改变参数,其他不变。

  3. This 关键字用于指代本类对象
    Super 用于指代父类对象

    A:在类中的位置不同
    成员变量:在类中方法外
    局部变量:在方法定义中或者方法声明上
    B:在内存中的位置不同
    成员变量:在堆内存
    局部变量:在栈内存
    C:生命周期不同
    成员变量:随着对象的创建而存在,随着对象的消失而消失
    局部变量:随着方法的调用而存在,随着方法的调用完毕而消失
    D:初始化值不同
    成员变量:有默认初始化值
    局部变量:没有默认初始化值,必须定义,赋值,然后才能使用。

    若局部变量名称可以和成员变量名称一样,在方法中使用的时候,采用的是就近原则。

  4. 封装:将实体特征的属性隐藏起来,对象与外界仅通过公共方法交流,这样可以提高程序的可靠性、安全性、改善程序的可维护性。

  5. 继承的实现:extends关键字

  6. 本质上多态分为:
    (1)运行期多态(动态多态)
    (2)编译期多态(静态多态)
    方法的重载(overload)是编译时多态
    运行期多态:继承或父类引用指向子类对象

    多态:Father c = new Child()

    编译看左,运行看右:c可以访问子类重写父类的方法,c不可以访问子类的特有方法,c可以访问父类中的成员变量。

  7. 四种访问控制符及权限:

  8. 使用abstract关键字定义抽象类

  9. 对象类型转换:

    向下转型
    向上转型:多态

  10. Static修饰的类变量和类方法可直接通过类名访问,(JVM加载时生成)且各对象的同一类变量和类方法享有同一内存空间。
    Static修饰的类变量和类方法不可访问非静态的成员变量和成员方法

  11. 被Final修饰的是不可变的。
    对于不可变的理解:
    对于基本类型来说:不可变说的是数据不可改变
    对于引用类型来说:不可变说的是地址值不可改变,内容是可以发生变化的。

  12. 如何定义和导入包

  13. 接口的定义和使用:

定义:public(或默认) interface 接口名 (extends 父类接口列表)

  1. 内部类、匿名类的定义

  2. 泛型

四、数组和字符串:

  1. 定义数组:
    动态定义: int[] a = new int[数组长度];
    静态定义: int[] a = new int[]{元素1,元素2,元素3…};
    静态定义的省略: int[] a = {元素1,元素2,元素3…};

  2. 数组的length属性,是成员变量

  3. 多维数组的定义和初始化
    二维:
    动态定义: int[][] a = new int[数组行数][数组列数];
    也可以只定义行数: int score[][] = new int[数组的行数][];
    score[0] = new int[数组长度];
    score[1] = new int[数组长度];
    score[2] = new int[数组长度];

  4. 字符串的两种创建方法:
    (1)使用字符串构造方法:

    (2)使用赋值语句.
    String s = “Hello World!!”;

  5. String类的主要方法:

     1)获得字符串的长度:public int length();2)截取一个字符:public char charAt(int index);3)获得子串:public String substring(int beginIndex);public String substring(int beginIndex,intendIndex);4)字符串相等比较:public boolean equals(String s);5)字符串连接:public String concat(String s);6)字符串内容比较:public int conpareTo(String s);    ——>逐字符比较,全相同返回0,不同返回差值(有正负).7)字符串检索:public int indexOf(char ch);public int indexOf(char ch,int beginIndex);public int indexOf(String s);public int indexOf(String s,int beginIndex);8)字符串与字符数组的相互转换:copyValueOf9)去掉起始和结尾的空格:trim10)字符串替换:replace11)字符串大小写替换:toLowerCase/toUpperCase12)将其他数据类型转换为字符串:ValueOf13)字符串分割:split
    

五、异常处理:

  1. 异常:程序在运行过程中产生的不正常情况。
  2. Java处理异常的两种方式:
    (1)throw关键字
    使用throw关键字可以在指定的方法中抛出指定的异常。
    使用格式:throw new xxxException(“异常产生的原因”);
    (2)try-catch-finally
  3. thorw和throws关键字。
    Thorws:异常处理的一种方式,抛出异常,让别人处理。

六、Java IO流:

  1. 什么是流的读和写?
    读:输入
    写:输出

    流式输入/输出(流式I/O)是一种顺序存取方式。

  2. 字节流和字符流的区别?

    字节流:面向字节的流,以8位1字节单位进行读写,是抽象类InputStream和OutputStream的子类。通常用于处理图像和声音。
    字符流:是面向字符的流,以16位字符为单位进行读写。是抽象类Reader和Writer的子类。通常用于字符数据的处理。

    区别:传输大小不同。

  3. 节点流和处理流如何区分?
    通过参数区分。

七、图形用户界面 GUI:

组件、容器、事件构成了图形用户界面的三大要素。

Java图形用户界面程序主要组成元素是组件。

  1. 容器:

    容器是用来容纳其他组件和容器的特殊组件,是由容器类(Container类)创建的对象。在Java语言中,容器类是组件类(Componnent)的一个子类,具有组件的所有性质。

     分类:(1)顶层容器:JFrame(最常用),JApplet,Jwindow,JDialog.(2)中间容器:JPanel,JScrollPane,JsplitPane,JDeskopPane,JToolBal.(3)特殊容器:在GUI上其特殊作用的中间层,如JInterNalFrame.
    

    除了顶层容器外,其他组件是不能独立显示的,必须放在(add()方法)一定容器中才能显示出来。(add()方法是向容器中添加组件的唯一途径).

     JFrame类设置窗体常用的方法:(1)setTitle(String title);(2)setBounds(int x,int y,int width,int height);//设置窗体显示的位置(x,y)及大小(3)setVisable(Boolean b);//默认使用JFrame类创建的窗体是不可见的,该方法可使窗体可见(4)setDefaultCloseOperaton(int operation);   //设置关闭按钮的动作,参数为JFrame提供的四个静态常量(5)添加操作:若添加AWT组件,则使用add()方法;但Swing组件不能直接添加到顶层容器中(低版本JDK)。
    
  2. 面板:为了更好的管理组件
    P175 实现

  3. 布局
    (1)不使用布局管理器:
    (2)边界布局:由BorderLayout类实现
    (3)顺序布局:由FlowLayout类实现
    (4)网格布局:由GridLayout类实现
    (5)卡片布局:由CardLayout类实现

  4. 事件处理
    事件处理过程主要涉及: 1.事件源 2.时间 3.事件处理者
    事件源是事件发生的场所,通常是各个组件,如被单机的按钮;
    事件是用户对界面的操作,如操作键盘时出发的键盘事件;
    事件处理者则是对收到的事件进行处理的程序,也称为监听器。

八、Java多线程:

  1. 进程与线程:一个进程可以包含多个线程。

  2. 实现线程的两种方法:
    (1)继承Thread类,重写run()方法,创建Thread子类对象,调用start()方法。
    (2)实现Runnable接口,重写run()方法,创建Thread类对象,参数为实现接口: Thread th = new Thread(实现类对象);调用start()方法。

  3. 线程的状态:
    (1)新建
    (2)就绪
    (3)运行
    (4)阻塞
    (5)死亡

    生命周期:

  4. 线程类的主要方法:

Sleep方法:休眠
yield方法:暂停 (静态方法)
join方法:合并
destory方法:销毁
interrupt方法:中断。一个线程运行使,另一个线程可以调用对应的Thread对象                 的interrupt方法中断它。
wait方法:使线程进入等待状态,直至被另一个线程唤醒。

注:sleep()调用会给较低优先级的线程一个运行机会,而yield()方法指挥给相同优 先级线程一个执行机会。

  1. 线程的同步:(为了避免同一个数据对象被多个线程同时访问)

JAVA基础----简答相关推荐

  1. java单链表查询功能,Java 实现简答的单链表的功能

    作者:林子木  博客网址:http://blog.csdn.net/wolinxuebin 參考网址:http://blog.csdn.net/sunsaigang/article/details/5 ...

  2. 面试官问了我几道Java基础没答上来

    面试官问了我几道Java基础没答上来 文章目录 面试官问了我几道Java基础没答上来 1.面向对象的三大特性,分别解释下? 2.说到多态,再来说下方法重载和重写的区别? 3.Java是面向对象的语言, ...

  3. 计算机应用基础讨论题目,计算机应用基础简答的题目答案.doc

    <计算机应用基础>课后习题简答题答案 习题一 1.计算机的应用领域主要有哪些? 答:1.科学计算:2.事务处理:3.过程控制:4.辅助工程:5.网络应用 2.何谓指令?指令中的操作码.操作 ...

  4. Java基础-简聊类与对象

    简聊类和对象 我们在了解类和对象前,先聊下面向对象程序设计,面向对象程序设计就是通过对象来进行程序设计,对象表示一个可以明确标识的实体,比如:一辆车.一个人.一朵花等等,每个对象都有它自己独特的标识: ...

  5. java画笑脸_java的画图运用。一个简答的笑脸程序☺

    一个简答的笑脸. 需要两个java文件 代码如下: GradeBook.java import java.awt.Color; import java.awt.Graphics; import jav ...

  6. 计算机应用简答,计算机应用基础简答题.doc

    <计算机应用基础简答题.doc>由会员分享,提供在线免费全文阅读可下载,此文档格式为doc,更多相关<计算机应用基础简答题.doc>文档请在天天文库搜索. 1.计算机应用基础 ...

  7. java十四章简答_java各章节简答题

    Java简答题第1章 1.Java语言的特点? 答:简单性.面向对象.分布式处理.健壮性.结构中立.安全性.可移植性.解释性.高性能.多线程.动态 2.Java程序的开发步骤 1)编写源文件.扩展名必 ...

  8. 计算机基础知识简答题汇总,计算机基础(简答)

    计算机基础知识 简述计算机的发展经历了那几个阶段? 人们根据计算机采用的主要元器件的不同,将电子计算机的发展分为四代: 第一代(1946年-1956年)为电子管计算机,也叫真空管计算机,其主要逻辑元件 ...

  9. java面试基础问题答不上来怎么办,快来看鸭~

    Java面试高频题:Spring Boot+Sentinel+Nacos高并发已撸完前段时间自己有整理了一些Java后端开发面试常问的高频考点问题做成一份PDF文档(1000道高频题),同时也整理一些 ...

最新文章

  1. 用onerror处理图片获取失败问题
  2. Android Framework------之Property子系统
  3. SpringBoot微服务 b2b2c 多用户商城系统(八)springboot整合mongodb
  4. matlab转向梯形优化设计,转向梯形优化设计matlab程序
  5. 图论--网络流最大流问题
  6. 获取/设置IFRAME内对象元素的几种JS方法
  7. php array_key_exists() 与 isset() 的区别
  8. NGINX(二)内存池
  9. 利用ajax查询数据库显示在前台,ajax动态查询数据库数据并显示在前台的方法
  10. MySQL详细安装教程
  11. 物流配送软件测试,物流配送最优路径规划
  12. linux ping 不通 arp incomplete,关于show arp表,显示Incomplete问题
  13. 海思isp图像处理芯片_最新海思芯片3559A的功能简介
  14. 科学计算机如何将角度换成小数点,角度计算器-卡西欧计算器上D(角度制)怎么切换RT– 手机爱问...
  15. OSChina 周一乱弹 —— 我当你是朋友,你却……
  16. animite cc html5项目,Animate CC HTML5/Canvas使用actionscript控制嵌套的MovieClip時間軸
  17. 30天自制操作系统-3
  18. itextpdf将带复选框的html_使用flying-saucer 实现 html转pdf实现input框select,textarea checkbox等的显示...
  19. Java并发编程|第二篇:线程生命周期
  20. 2022-2028年中国棉花采摘机行业市场调查研究及投资策略研究报告

热门文章

  1. 深度学习在推断阶段(inference)的硬件实现方法概述
  2. Spring Data JPA 梳理 - JPA是什么
  3. 【洛谷P1169】[ZJOI2007]棋盘制作
  4. Python学习:Mysql(二)
  5. Spring配置文件总结
  6. TCP/IP协议学习(五) 基于C# Socket的C/S模型
  7. sqlplus 登陆报协议适配器错误
  8. 屋子里有1到100号100盏关闭的灯
  9. c# session总结
  10. Test: 为WLW添加源代码着色插件WindowsLiveWriter.CNBlogs.CodeHighlighter