javaSE基础入门指南
文章平均质量分 74
JavaSE基础入门指南,为您揭秘Java编程的魅力!从编写、编译到运行代码,逐步引导您走进Java的世界。掌握数据类型、运算符和控制语句,奠定编程基础。深入面向对象编程,探索类的定义、对象的创建,以及继承和多态的奥秘。同时,学会异常处理,掌握常用类和接口。助力轻松迈向JavaSE高手之路!
清如许.
种一棵树最好的时间是十年前,或者现在!
展开
-
java语言入门总结
1.什么叫做程序?人类对机器的一些指令的集合2.程序是由_字符构成,编写程序所用的文件叫做源文件,当程序运行时必须将该文件转换为机器码文件__文件。3.Java是在___1995__年问世,由___Sun___公司__Green__项目组负责研发,组长叫___詹姆斯·高斯林___,被后人称为Java 之父。4.Java语言的特点是___跨平台性_____,简单性__,面向对象_____。...原创 2019-04-04 10:30:37 · 672 阅读 · 0 评论 -
浅谈java中static关键字修饰的几种用法
在java的关键字中,static和final是两个我们必须掌握的关键字。不同于其他关键字,他们都有多种用法,而且在一定环境下使用,可以提高程序的运行性能,优化程序的结构。下面我们先来了解一下static关键字及其用法。static关键字1,修饰成员变量类,里面有属性和方法属性里面又分局部变量,实例变量和类变量实例变量,在创建对象的时候分配空间初始化类变量不再属于某一个对象,它属于全类...原创 2019-04-15 21:39:18 · 1426 阅读 · 0 评论 -
"=="和 equals 方法究竟有什么区别?
(单独把一个东西说清楚,然后再说清楚另一个,这样,它们的区别自然就出来了,混在一起说,则很难说清楚)== 操作符== 操作符专门用来比较两个变量的值是否相等,也就是用于比较变量所对应的内存中所存储的数值是否相同,要比较两个基本类型的数据或两个引用变量是否相等,只能用== 操作符。如果一个变量指向的数据是对象类型的,那么,这时候涉及了两块内存,对象本身占用一块内存(堆内存),变量也占用一块内...原创 2019-04-17 09:19:29 · 267 阅读 · 0 评论 -
java中final修饰符,修饰变量、方法、类的详细用法
final可以用来修饰变量(包括类属性、对象属性、局部变量和形参)、方法(包括类方法和对象方法)和类。1, final 修饰变量:final修饰的变量表示此变量是“最后的、最终的”含义。一旦定义了final变量并在首次为其显示初始化后,final修饰的变量值不可被改变。所以,final修饰变量时就成了 常量(一旦赋值不能改变)常量名一般要全部大写;final int BOY = 1;...原创 2019-04-17 21:12:09 · 9080 阅读 · 2 评论 -
java中abstract 和interface的区别与相似之处?
抽象* 类* 抽象类,只能声明引用,不能创建对象* 方法* 抽象方法,只有声明,没有实现抽象类,只能声明引用,不能创建对象如果一个类中有抽象方法,这个类就必须是抽象类。但是抽象类中未必有抽象方法;抽象类中可以有构造方法;子类继承抽象类,如果子类不希望也成为抽象类,就必须实现父类中声明的 所有 抽象方法;抽象的作用:利用抽象可以实现把方法声明抽象到父类中,而方法实现...原创 2019-04-22 21:58:30 · 1165 阅读 · 1 评论 -
基于ArrayList增删改查实现的java商品管理系统
系统简介某超市开业,为了实现仓库商品标准管理化,需要一套操作简单的商品管理系统。主要业务有:添加商品、删除商品、修改商品属性、查看某一种商品信息、查看所有商品信息。细节提示需要管理的商品有以下几种属性:商品编号、商品名、商品价格以及商品库存。商品编号是唯一的,每种商品的编号都不能一样。业务细节添加功能添加商品信息时需要手动输入商品编号、商品名、商品价格以及商品库存,每次录入完一种...原创 2019-05-05 18:59:46 · 3797 阅读 · 0 评论 -
8种基本数据类型的包装类,以及之间的相互转换
什么是包装类?java中的基本数据类型如int,double等不是对象,无法通过向上转型获取到Object提供的方法.而String却可以,因为String是一个对象而不是一个类型。基本数据类型由于这样的特性,导致无法参与转型,泛型,反射等过程。为了弥补这个缺陷,java提供了包装类,为8中简单类型提供对象形式,让Object统一所有数据。包装类顾名思义就是将基本的数据类型以及一些辅助方法...原创 2019-05-08 18:57:04 · 2888 阅读 · 1 评论 -
java存储机制(堆、栈、方法区)
堆、栈、方法区存储的内容堆:堆中存放的都是new出来的对象,每个对象都包含一个与之对应的.class文件,凡是new出来的对象都存放在堆中,堆中不存放基本类型和对象引用,只存放对象本身。非静态成员变量在类的实例化时开辟空间并初始化,所以类的非静态成员变量也放在堆中。对于堆中的对象生命周期的管理由Java虚拟机的垃圾回收机制GC进行回收和统一管理。栈:每个线程包含一个栈区,栈中只保存基础...原创 2019-05-09 10:28:10 · 3464 阅读 · 2 评论 -
java IO流详细总结(一、字节输入输出流)
一、什么是IO流:将数据从内存传输到外部存储设备的通道,管道。IO流的分类:1.按方向划分:<以JVM为参照物>输入流:将<外部存储设备>中的数据读入到<内存>中。输出流:将<内存>中的数据写入到<外部存储设备>中。2.按单位划分:字节流:以字节(8bit)为单位,能够传输所有类型的文件。字符流:以字符为单位,一次可能读多...原创 2019-05-18 22:27:15 · 770 阅读 · 1 评论 -
java异常分类,异常处理,面试中常见异常问题!
什么是异常?程序运行过程中产生的不正常的情况统称为异常!Throwable 类是 Java 语言中所有错误或异常的超类。提供了错误堆栈实现等一系列方法。 有两个直接子类:Error & Exception程序错误一般分为三种:1.编译错误;2.运行时错误;3.逻辑错误。(1)编译错误是因为程序没有遵循语法规则,编译程序能够自己发现并且提示我们错误的原因和位置,这个也是我们在刚接触...原创 2019-05-14 13:03:06 · 7216 阅读 · 4 评论 -
java IO流详细总结(二、字符输入输出流,File文件操作类)
再次回忆一下什么是字节流、字符流:IO流以单位划分:字节流:以字节(8bit)为单位,能够传输所有类型的文件。字符流:以字符为单位,一次可能读多个字节。.只能传输文本文件(能够被记事本打开.java/.txt/.html,并且不改变内容的文件)只要是处理纯文本数据,就优先考虑使用字符流。 除此之外都使用字节流。所以字符流顾名思义就是主要操作字符的!四、字符流的编码问题字符是我们能读懂...原创 2019-05-19 11:13:56 · 975 阅读 · 1 评论 -
java中的四种内部类详解(成员类内部类,静态内部类,局部内部类,匿名内部类)
什么是内部类?类中定义类,在一个类的内部定义一个完整的类就叫做内部类例如:public class TestInner { public static void main(String[] args) { Outer o = new Outer(); Outer.Inner inner = o.new Inner(); inner.inner_method(); }}...原创 2019-05-07 16:18:27 · 844 阅读 · 0 评论 -
Eclipse或Myeclipse扩展用法以及常用快捷键
MyEclipse快捷键大全MyEclipse 快捷键1(CTRL)Ctrl+/ 注释当前行,再按则取消注释Crtl+Q 跳到最后一次编辑时的位置Crtl+W 关闭当前窗口Crtl+E 选择当前打开的类Crtl+ A 全选Crtl +S 保存Crtl+Shift +S 全部保存Crtl+D 删除当前行Crtl+ Z 撤销Crtl+ X 剪切Crtl+ C ...原创 2019-05-15 22:03:56 · 413 阅读 · 2 评论 -
java中的集合框架(Set、List、Map)及其实现类
Java中集合框架包括Collection接口、Set接口、List接口、Map接口,已经常用的它们的实现类,简单的JDK源码分析底层实现集合框架:Java语言的设计者对常用的数据结构和算法做了一些规范(接口)和实现(实现接口的类)。所有抽象出来的数据结构和操作(算法)统称为集合框架。程序员在具体应用的时候,不必考虑数据结构和算法实现细节,只需要用这些类创建一些对象,然后直接应用就可以了,这...原创 2019-05-13 11:16:16 · 2623 阅读 · 1 评论 -
java中的反射
java中的反射主要介绍以下几方面内容理解 Class 类理解 Java 的类加载机制学会使用 ClassLoader 进行类加载理解反射的机制掌握 Constructor、Method、Field 类的用法理解并掌握动态代理1.理解Class类 –对象照镜子后可以得到的信息:某个类的数据成员名、方法和构造器、某个类到底实现了哪些接口。对于每个类而言,JRE 都为其保留一个不变...原创 2019-05-22 23:35:28 · 284 阅读 · 0 评论 -
isEmpty和null有什么区别
isEmpty和null的区别:1.isEmpty是对象是否为空(IsNull),null是值为空(IsEmpty)2.isEmpty() 用于判断List内容是否为空,必须在 list 本身不是空的引用的情况下才行;null 用于判断有没有这个集合对象;是否为空 IsNull函数:功能:返回Boolean的值,指明表达是否不包含任何有效数据。NULL表示的是数据值未知或不可用,它不表示...原创 2019-06-24 09:19:56 · 23219 阅读 · 6 评论 -
面试题:说一下HashMap和HashSet的实现原理?
HashMap是基于Hash算法实现的,我们通过put(key,value)存储数据,通过get(key)来获取数据当传入key时,HashMap会根据Key.hashCode()计算出Hash值,根据Hash值将value保存在bucket里 ,。当计算出相同的Hash值时,我们称之为Hash冲突,HashMap 的做法是用链表和红黑树存储相同Hash值的value,当hash冲突的个数...原创 2019-08-08 10:56:00 · 5654 阅读 · 0 评论 -
简述java中this,和super关键字的区别和作用
super在JAVA类中使用super来引用父类的成分,用this来引用当前对象,如果一个类从另外一个类继承,我们new这个子类的实例对象的时候,这个子类对象里面会有一个父类对象。怎么去引用里面的父类对象呢?使用super来引用,this指的是当前对象的引用,super是当前对象里面的父对象的引用。所以,super关键字有以下两个用法:1, 引用: 父类对象 访问父类被遮盖的属性或调用父...原创 2019-04-09 08:58:20 · 7439 阅读 · 1 评论 -
简述java中继承的概念,单继承,访问修饰符的访问权限(Private、Default、Protected、Public)访问权限
继承:父类----子类 一般 ---特殊父类:子类的共性抽象出来父类中的所有属性和方法会继承到子类 。。。。子类继承父类,表明子类是一种特殊的父类,并且具有父类所不具有的一些属性或方法。如果子类能够访问的父类属性和方法,即是子类从父类中继承的属性和方法(子类能否突破父类的边界)构造方法一定不能继承继承中的访问修饰符(从严到宽)Private 私有的,本类内部 子类不能继...原创 2019-04-09 08:45:30 · 881 阅读 · 1 评论 -
java 注释、标识符、变量、数据类型、类型提升、表达式
1.什么叫做注释,注释有什么作用?描述代码的文字,代码的解释说明,使自己更容易看懂代码。提高代码的可读性。2.Java中的注释分为几种?语法是什么?有什么区别?1, // 单行注释2, / …. / 多行注释,其中不能再嵌套多行注释3, / …… / 多行注释 , 配合javaDoc工具使用,将注释抽取出来形成文档。*3.标识符是什么? 语法要求是什么?一...原创 2019-04-04 10:42:54 · 725 阅读 · 0 评论 -
java局部变量和实例变量(成员变量)的区别,和分支流程
1.(填空)局部变量是指在___函数内部_____定义的变量。2.(简述)简述局部变量的使用要求。1, 先赋值,后使用2, 作用范围:定义开始,到定义它的代码块结束。3, 在重合范围内,不允许两个局部变量发生命名冲突4.(填空)if(){}中()中可以出现 布尔表达式_。流程控制-顺序执行条件分支流程 if( 布尔表达式){代码块}5.(简述)switch()中可以出现哪些类...原创 2019-04-04 10:50:40 · 755 阅读 · 1 评论 -
简述java的三种循环流程
简述循环流程的三种方式。While (布尔){ } ,布尔值为真,执行代码块内容,否则不执行For() 适合确定性循环Do{} while()循环:通过某一个条件,反复执行一段代码语法: while(布尔表达式){ 代码块 } 当布尔表达式为真时,执行代码块,执行完毕 再次判断布尔表达式, 当布尔表达式为真时,继...原创 2019-04-04 10:59:48 · 1223 阅读 · 0 评论 -
java函数的基本概念,作用与语法
函数:函数是一段可以反复使用的完成特定功能的代码应定义在类的内部,其他的任何函数的外面。一个类中,多个函数的顺序是无关紧要的函数:由代码构成,完成特定的任务语法声明函数并实现 修饰符 返回值类型 函数名(参数列表){ //实现代码块 }Eg:public static void printLine(){}...原创 2019-04-04 11:02:52 · 1345 阅读 · 4 评论 -
java数组基础的基本概念,声明与遍历
数组数组是在一块连续的内存空间中,一次性存储多个相同数据类型的变量。数组在内存空间必定是连续的!数组的基本使用流程: ①声明 数据类型[] 变量名; int[] a; int []a; int a[]; ②分配空间 变量名/数组名 = new 数据类型[数组长度]; a = new int[4]; ...原创 2019-04-04 11:05:17 · 468 阅读 · 0 评论 -
java数组的三种扩容方式,二维数组,数组的三种排序方式
因为数组是在内存中连续的一段存储空间,所以数组一旦被创建,空间就固定了,长度是不能扩增的。数组的长度是固定的,如果需要扩充,必须创建新数组,原数组的长度要复制到新数组中 。java中,数组类型的变量传值的时候,事实上传递的是数组的地址。数组扩容的方式有几种,分别是什么?新建一个数组,把原来数组的内容搬到 新数组中。用一个循环将原来数组地址换到新的大数组地址中 用系统定义函数...原创 2019-04-04 11:09:48 · 1734 阅读 · 0 评论 -
java数组的增删改查CURD操作
今天被一个同学问到这个对数组的增删改查问题,顺便就整理一下吧:我是定义了四个函数,用到那个分别调动哪个就可以:下面代码已经加了详细注释:import java.util.Scanner;class curd{ //实现数组的增删改查 public static void main(String[] args) { int[] a = {1,3,5,9,7,11,52,6,13,19...原创 2019-04-04 11:15:43 · 818 阅读 · 0 评论 -
java数组的三种扩容方式以及程序实现
众所周知,数组的长度是___固定的_____,如果需要扩充,必须创建新数组,原数组的长度要复制到新数组中 。所以,数组的扩容方式有:新建一个数组,把原来数组的内容搬到 新数组中。1, 用一个循环将原来数组地址换到新的大数组地址中2, 用一个函数采用同样的方式实现扩容效果3, 用系统定义函数system.arraycopy实现扩容;4, 用系统定义函数copyof函数实现扩容;clas...原创 2019-04-04 11:27:17 · 2177 阅读 · 0 评论 -
java最简单的三种排序问题(冒泡排序、选择排序、快速排序)
**完成数组的冒泡排序算法**//冒泡排序:两个相邻数相比,循环冒泡n-1次; class paixu{ //冒泡排序 public static void main(String[] args) { int[] a = {4,5,2,1,6,83,9,7,0}; for(int i=1;i<a.length;i++){//注意:这里的i初值应从1开始; //内层循...原创 2019-04-04 11:34:31 · 392 阅读 · 0 评论 -
面向过程、与面向对象程序分析设计领悟
面向过程的编程思想: 从程序的实现过程入手自动向下,逐步求精。Java是从c++借鉴过来的,java有跨平台性Java纯面向对象C++即面向过程又面向对象面向对象的编程思想:一切客观存在的事物都是对象;对象都具备_属性(代表对象有什么)和方法(代表对象能做什么)。面向对象OOP:万物皆对象! 属性:有什么 方法:能做什么 对象的属性可能...原创 2019-04-08 08:34:33 · 377 阅读 · 0 评论 -
java三大特性之多态的认识,以及多态的实际应用(一)
首先,什么是多态?我们应该从什么角度来理解多态?其实,我们不妨把多态理解成一种事物的多种存在形态,比如,猫和狗都属于动物的子类,可以想象成为动物,而动物又可以变成猫和狗。多态是将子类对象当作__父类__对象来看待,也就是子类对象可以放入父类中 引用。 为了充分理解多态,我们可以从以下这几个方面来理解多态。 第一、从多态的体现方面:我们使用多态的时候,创建的是父类的引用,开辟的是子类的...原创 2019-04-11 21:18:54 · 851 阅读 · 0 评论 -
java三大特性之多态的认识,以及多态的实际应用(二)
多态的实际作用:将不同子类对象统一当作父类对象,屏蔽了不同子类之间的差异。使用多态的好处:应用程序不必为每一个派生类编写功能调用,只需要对抽象基类进行处理即可。大大提高程序的可复用性。//继承派生类的功能可以被基类的方法或引用变量所调用,这叫向后兼容,可以提高可扩充性和可维护性。 //多态的真正作用,多态的两种常见用法:1, 多态用在方法参数上, 形参可以是父类引用,实参可以传...原创 2019-04-11 21:30:40 · 477 阅读 · 0 评论 -
java中类的概念、基础编码,方法重载
类:类是对象共性的抽象 客观对象在人脑中的主观反映, 或者说类是人对对象的认识 类是对象的模板假如说 一条狗,你第一想到的是什么,(四条腿,有尾巴,会叫)这就是人脑的主观反映,狗就是一种类,种类。如何编写一个类:一个源文件中可以写多个类,但只能写一个公开类,公开类类名要和文件同名**属性:**其实就是定义变量局部变量:定义在方法内部的变量,就叫局部变...原创 2019-04-08 20:29:12 · 850 阅读 · 0 评论 -
java构造方法,对象的创建过程,数据类型的引用
一个特殊的方法public 类名(){ }定义在类的内部,其他方法外部。用来创建对象和给属性赋值构造方法没有 返回值类型(连void都没有)方法名必须和类名相同(一个类中要想用多个构造方法只能用重载)构造方法不允许手工调用,在对象构造过程中(通过 new 关键字创建对象时)自动调用1次;(好比人类中的剪脐带,只在出生的时候剪一次)构造方法可以重载当没有手动添加构造方法时,系统会默认添加无参构造当添加有参构造方法时,将不再自动添加无参构造作用:给实例中的对象赋值;原创 2019-04-08 20:41:47 · 13033 阅读 · 2 评论 -
java方法的重载要求与作用,重载与重写的区别
方法的重载Overload:面向对象中特有的现象:允许定义多个同名方法,参数表不同 ,即参数个数不同参数类型不同参数类型的排列不同形参名不同,不算重载方法重载的调用:由编译器在程序编译的时候,根据实参的类型选择一个合适的方法调用向上就近类型匹配原则,避免混淆 比如m方法byte参数找不到 就去找m方法short参数方法的重载一般又被称作 编译时多态;为什么要使用方...原创 2019-04-08 20:51:47 · 756 阅读 · 0 评论 -
简述java三大特性中的封装的概念及用法
所以就定义一个公开的get()和set()方法来供程序调用,相当于从public的没有边界到private 的封装边界中打开两个门,一个门是负责get()获取属性的值,另一个门set()方法设置属性的值;如果设置成public,相当于全部公开,没有任何权限,谁都可以访问,而设置成私有的之后相当于设立一个门,可控制这个属性的值怎么获取;例如下列程序中,银行卡密码如果不设置为私有变量的话那个谁都可以获取打密码并且进行修改,所以必须把密码设为私有变量,相当于开两个门,修改和获取两个门(门可控制开关);原创 2019-04-08 21:19:24 · 12822 阅读 · 2 评论 -
多线程相关面试题:并行和并发的区别、线程和进程、线程的创建方式、运行状态
1,并行和并发有什么区别并行:多个处理器或多核处理器同时处理多个任务。并发:多个任务在同一个CPU核上,按细分的时间片轮流(交替)执行,从逻辑上来看并发的任务是同时执行;简而言之:并发=两个队列和一台处理器并发=两个队列和两个处理器2、线程和进程的区别一个程序下至少有一个进程,一个进程下至少有一个线程,一个进程下也可以有多个线程来增加程序的执行速度。3.守护线程是什么?守护线程...原创 2019-08-08 11:37:27 · 1138 阅读 · 1 评论