JAVA SE基础知识
文章平均质量分 57
本专栏主要包括的是本人通过看视频,看书,总结的JAVA SE部分的知识点,希望能帮到JAVA初学者,文章中如果有错误,希望能及时联系我,我会进行修改,不要误导他人。
Jivan2233
一个又在努力准备复试的考研学生。
展开
-
如何使用Class和ClassLoader加载文件
很多时候我们都需要在程序中加载各种文件,比如在加载配置文件,加载properties文件,或者只是加载一个文本文件,然后输出其中的内容,我在初学java的时候,就对加载文件非常头疼,今天又遇见了加载文件的问题,索性就一下子搞清楚,然后就有了这篇博客,希望能帮到对加载文件有疑惑的人吧。 本文的实验环境是在idea下,但是同样适用于使用eclipse的读者。一、什么是类路径这篇文章主要是将怎...原创 2018-05-05 15:55:31 · 5099 阅读 · 1 评论 -
Java实现简单的图形界面计算器
前言因为这两天我们的Java实验课程需要做两个小的图形化界面,其中就有一个图形界面的计算器,所以稍微花了点时间做了一个,同时复习了一下Java的基础内容和GUI编程。因为代码中的注释特别详细,所以这里就不讲解怎么实现的了。代码package zuoye;import javax.swing.*;import java.awt.*;import java.awt.event....原创 2018-06-11 09:44:15 · 28245 阅读 · 5 评论 -
Java实现简易的界面通讯录
前言这个也是Java实验课程的一个作业,和Java实现简单的图形界面计算器一起做的,因为以前没有做过GUI编程,所以做的非常简陋,还有很多BUG,但是感觉当个作业也够了。程序功能和截图 这里的添加是直接添加到文件中,为什么不用数据库呢?因为我们老师根本就没教,所以也不能用.。 通过输入的名字在文件中查找是否有该用户,如果用,就显示到界面上。 大致的功能就是上面两个。代...原创 2018-06-11 09:53:30 · 34235 阅读 · 10 评论 -
java学习笔记--注解
一、什么是注解1、语法:@注解名称2、注解的作用:代替xml配置文件,servlet3.0中就可以不再使用web.xml,而是使用注解代替,注解是有框架来读取使用的。3、注解的使用定义注解类:框架的工作使用注解:我们的工作读取注解:框架的工作二、java中的注解@Override:作用在方法上,当方法不是重写父类的方法时会报错@Deprecated:作用在方法上...原创 2018-03-11 20:38:28 · 365 阅读 · 0 评论 -
java基础知识--反射
一、反射是什么?反射有什么用?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。Java反射机制主要提供了以下功能: 在运行时判断任意一个对象所属的类在运行时构造任意一个类的对象在运行时判断任意一个类所具有的成员变量和方法在运行时原创 2018-02-05 16:09:39 · 338 阅读 · 0 评论 -
Java基础知识--变量
本人的GitHub:戳我一下昨天写了两个小时 , 结果账号没绑定 , 崩溃了一会 , 重新写吧……..这些知识点是从《Java核心技术》和《Thinking in Java》两本书总结的,但本人水平有限,如果文章中有错误,请及时告诉我,我会及时更改,以免误导别人。 1. 变量名必须是以一个字母开头并由字母和数字构成的序列。字母包括‘A’~‘B’,‘a’~‘z’,‘_’,‘$’(还有一个打不出原创 2017-10-25 19:00:08 · 312 阅读 · 1 评论 -
Java基础知识--带标签的break和continue
本人的GitHub:戳我一下、、##举个栗子:public class LabeledFor { public static void main(String[] args) { int i = 0; outer://外部标签 for(;true;) {//怎么跳出这个循环?? inner://内部标签原创 2017-10-26 19:50:20 · 333 阅读 · 0 评论 -
Java基础知识--数组
本人的GitHub:戳我一下在java中,数组是一种效率最高的储存和访问对象引用序列的方式一维数组:声明:int[] a; 或 int a[]; int [] a = new int[100]; 或 int[] a = new int[n](n为变量)初始化:int[] a = {1,2,3,4,5};在java中,允许数组长度为0,数组长度为0和null不同原创 2017-10-26 20:26:43 · 281 阅读 · 0 评论 -
java基础知识--类和对象、继承(一)
本人的GitHub:戳我一下类是构造对象的模版,由类构造对象的过程称为类的实例化,就像你想造汽车,那类就是造汽车的图纸,对象就是汽车。对象中的数据称为“域”,函数称为“方法”。(叫法不同的也不是我的错误,书中叫法也不一样)要想使用OOP(面对对象编程),一定要清楚对象的三个特性:对象的行为——可以对对象施加那些操作,或可以对对象施加那些方法?对象的状态——当施加那些方法时,对象如何响原创 2017-10-28 17:22:37 · 352 阅读 · 0 评论 -
java基础知识--类与对象、继承(二)
本人的GitHub:戳我一下1.java程序设计语言总是采用按值调用,也就是说,方法得到的是所有参数值的一个拷贝,方法不不能修改传递给它的任何参数变量的内容。例如:public swap(int x,int y){ int temp = x; x = y; y = temp;}int a,b;swap(a,b);这段代码中“a”和“b”的值并不会原创 2017-10-29 17:07:30 · 280 阅读 · 0 评论 -
java基础知识--多态
本人的GitHub:戳我一下多态,也被称为动态绑定,运行时绑定,后期绑定,我在看马士兵老师的视频时,听他讲到过一句话,我感觉这句话总结了多态的特性,这句话是“父类引用指向子类对象”,多态就是通过父类引用指向子类对象,通过父类的引用,调用子类的方法。 首先先谈谈向上转型和向下转型,我们都知道子类包含父类的所有域和方法,所以一个子类对象可以作为父类的对象使用,通过父类的引用访问子类的方法和域就是原创 2017-10-30 19:10:54 · 255 阅读 · 0 评论 -
java基础知识--抽象类和接口
本人的GitHub:戳我一下抽象类:如果自下向上的在类的继承层次结构中上移(继承层次结构中父类在上,子类在下),位于上层的类更具有通用性,也更加抽象,因此,java中有一种类不能实例化对象,只能被子类继承,这样的类就是抽象类。 抽象方法是只定义,但没实现的方法,例如: public void getName();//注意这里的分号。抽象类中可以没有抽象方法,但是一个类只...原创 2017-10-31 19:56:48 · 351 阅读 · 2 评论 -
java基础知识--lambda表达式
本人的GitHub:戳我一下lambda表达式是一个代码块,以及必须传入代码的变量规范。例如: (String first String second)->first.length() - second.length()lambda表达式形式:参数 -> 表达式 如果代码要完成的计算无法放入一个表达式中,可以将代码放入一组“{}”中,并书写显示的return语句。例如:原创 2017-11-02 20:21:17 · 268 阅读 · 0 评论 -
java基础知识--IO流示例
本人的GitHub:戳我一下示例(一)——File类的基本用法/** * File类的基本用法 */package com.yifanjia.one;import java.io.*;public class IO1 { public static void main(String[] args) {// //得到文件对象// File f =原创 2017-11-13 17:15:23 · 307 阅读 · 0 评论 -
java基础知识--死锁
举一个简单的例子理解一下死锁: 假如有两个人吃火锅,一个叫甲,一个叫乙,但是两个人各有一根筷子,两人都不把自己的筷子给对方,所以两个人都不能吃饭。(哈哈,本来想说吃饭,可是发现其实可以直接用手,所以换成火锅)这种情况就是死锁,换成程序的话,就是有两个线程,假设甲线程持有的是Object这个对象所,乙线程用的是this这个对象锁,但是甲现在却需要this锁,而乙需要Object锁,这时,甲乙两个线原创 2018-02-02 12:56:38 · 293 阅读 · 0 评论 -
java基础--一个简单的记事本
本人的GitHub:戳我一下这个程序还有很多问题,但是总的框架已经搭好,因为图形界面并不是主要的学习内容,所以这个写的挺糟糕的。/** * 我的记事本(界面+功能) */package com.yifanjia.one;import java.io.*;import java.awt.*;import java.awt.event.*;import javax.swing.*原创 2017-11-13 19:40:49 · 1584 阅读 · 0 评论 -
java基础--坦克大战(一)
本人的GitHub:戳我一下(该项目的全部内容可以从GitHub上下载)坦克大战这个项目很多学习人在学习java的过程中都做过,我从网上看了韩顺平老师的视频,然后做出了这么一个小游戏,其中还有很多功能没有实现,只能作为一个基础版本,还有很多不完善的地方,希望看到这篇文章的人把这些代码只当作一个借鉴。写这个小项目的过程也是对java se部分的知识的巩固,java se部分只是过度,但是这部分的原创 2017-11-16 17:15:20 · 604 阅读 · 0 评论 -
java基础--坦克大战(二)
本人的GitHub:戳我一下(该项目的全部内容可以从GitHub上下载)MyTankGame/** * 坦克游戏 * 1、画出坦克 * 2、坦克可以上下左右行走 * 3、坦克可以发子弹(最多五颗) * 4、实敌方坦克的自主移动和坦克被击中死亡 * 5、防止敌人坦克重叠 * 6、可以分关 * 7、可以暂停和继续 * 8、可以记录玩家的成绩 * 9、有音乐 */pa原创 2017-11-16 17:18:47 · 408 阅读 · 0 评论 -
java配置环境变量
本人的GitHub:戳我一下因为上次比赛时忘了怎么配置环境变量,不得已让前面的同学帮我配了一下,感觉总不能到了省赛上还让别人帮忙,所以今天专门学习一下怎么陪环境变量,并记录下来,希望以后能不忘记。一、首先我们要知道为啥要设置环境变量,以前我总是照着网上的教程复制一下,所以当不能上网时,我就没办法了,其原因就是我根本不懂为啥要配置环境变量,我感觉在理解的情况下更容易记住一些知识,算了原创 2018-01-26 15:19:22 · 8386 阅读 · 1 评论 -
java基础知识补漏
本人的GitHub:戳我一下一、静态代码块:用static {} 包住的代码块叫做静态代码块。 特点:随着类的加载而执行,只执行一次 示例:class StaticCode { static { System.out.println("a"); }}class StaticCodeDemo { static { Sy原创 2018-01-31 16:49:51 · 218 阅读 · 0 评论 -
java基础知识--传统多线程技术
本人的GitHub:戳我一下一、进程和线程进程:是一个正在执行的程序,每一个进程都有一个独立的内存空间。 线程:是进程中的一个独立的控制单元,一个进程中所有的线程共用一个内存空间。 关系:一个进程至少包含一个线程,线程是进程的一部分。二、创建一个线程创建线程有两种方法: 1、继承Thread类,并覆写run()方法:class Demo extends Thr...原创 2018-02-01 16:27:44 · 384 阅读 · 3 评论