![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础--学习笔记
maybe_u_like_eat_茄子
抬头做人,低头做事,过wo幸福的小日子
展开
-
java中的实例方法、类方法和构造方法
首先,明确什么是实例变量、类变量、局部变量 在java语言中,变量分为局部变量和成员变量大类。 成员变量(实例变量、类变量)是指在类体内且在方法体外定义的变量,其作用域是整个类。 局部变量是指在方法体内声明的变量,其作用域是从声明处开始至它所在的最小块的语句结束处,另外,方法中的形参、for语句中定义的循环变量也都是属于局部变量。 1.实例变量:在类体内且在方法体外定义的变量,且变量名前面没原创 2016-06-09 00:43:18 · 3842 阅读 · 3 评论 -
线程同步的案例
Java当中,对于同步,一般而言,在程序中需完成两个操作:把竞争访问的资源标示为private;同步那些访问资源的代码,使用synchronize关键字来修饰方法或者代码块,当synchronize方法执行完成或发生异常的时候,会自动的释放锁 下面用这个例子来讲解:某银行账号上有500元的现金,一个人拿着正卡去柜台取钱,而另一个人则拿着副卡器ATM机上去取钱,各自取400元钱。 要求:不能原创 2017-03-14 13:09:05 · 978 阅读 · 0 评论 -
线程通信
在现实应用中,很多时候,都需要去控制多个线程按照一定的次序去访问同一个共享的资源,比如生产–消费的经典案例 Java中提供3个重要的方法解决线程间的通信问题,这三个方法分别是wait();notify();notifyAll(); 下面是一个生产苹果和消费苹果的案例,每次放入篮子中5个苹果之后,再从篮子中一个个取出,再放入,再取出,依次循环4轮;import java原创 2017-03-14 23:37:34 · 283 阅读 · 0 评论 -
使用反射和注解得到一个类的注解信息
package com.iotek.annotation;import java.lang.annotation.Documented;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import原创 2017-03-26 22:22:11 · 692 阅读 · 0 评论 -
使用jdbc连接数据库的简单案例
package com.tr.jdbc;import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;import org.apache.commons.dbcp2.BasicDataSource;public class Collectio原创 2017-04-29 12:50:04 · 489 阅读 · 0 评论 -
反射的简单应用
所谓反射,是指在运行时状态中,获取类中的属性和方法,以及调用其中的方法的一种机制。这种机制的作用在于获取运行时才知道的类(Class)及其中的属性(Field)、方法(Method)以及调用其中的方法,也可以设置其中的属性值。 在Java中实现反射最重要的一步,也是第一步就是获取Class对象,得到Class对象后可以通过该对象调用相应的方法来获取该类中的属性、方法以及调用该类中的方法。 下面看原创 2017-06-10 10:51:20 · 310 阅读 · 0 评论 -
java中有无参数和返回值的方法
首先,定义一个土豪类(LocalTyrant) 属性:name moeney smoke 行为一:(无参数无返回值): 行为二:(无参数有返回值): 行为三:(有参数有返回值): 行为四:(有参数无返回值): 以下的例子要细细查看,慢慢分析,切不可急于求成package cm.tr; class LocalTyrant{ String name; int m原创 2016-06-09 23:52:45 · 20112 阅读 · 1 评论 -
利用反射拼接sql语句
首先,创建一个Student类:class Student{ private int age; private String name; private Date date; public Student(){} public int getAge() { return age; } public void setAge(int原创 2017-06-10 15:08:52 · 2054 阅读 · 0 评论 -
myeclipse中创建的servlet的doGet方法
做个备注,目的测试输出界面public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html"); PrintWri原创 2017-07-06 15:06:22 · 1415 阅读 · 0 评论 -
多线程去复制一个文件
package com.iotek.iodemo;import java.io.File;import java.io.IOException;import java.io.RandomAccessFile;public class MutiCopeFileDemo { public static void main(String[] args) { MutiCopeFi原创 2017-03-22 20:31:58 · 2141 阅读 · 2 评论 -
java用文件流实现查看下载次数
需求: 点击一个按钮的次数或者是展示文件,游戏被下载的次数实现: 开辟一个流文件,用来保存被下载的次数,然后读文件中value,点击一次value加1,再将此value保存到流文件中。 三种方法:package cn.tr.test;import java.io.BufferedReader;import java.io.BufferedWriter;import java.io.F原创 2017-12-14 13:16:09 · 2385 阅读 · 0 评论 -
mybatis中设置Oracle的id键自增
Oracle数据库不像MySQL一样,可以在表结构中设置id键增,但是可以通过序列+SQL来设置id键自增首先,新建序列,设置id从1开始自增序列名: SEQ_CUST_INCOME_REPORT-- Create sequence create sequence SEQ_CUST_INCOME_REPORTminvalue 1maxvalue 999999999999999999...原创 2018-11-12 14:50:00 · 3068 阅读 · 1 评论 -
java中弹出窗口,打开某一个指定的文件夹
今天在项目中有用到,下载完成一个文件之后,弹出下载到本地的具体文件夹,原来一行代码就可以实现这种方式,是调出Windows系统cmd窗口的方式去打开文件夹,受系统的约束Runtime.getRuntime().exec("explorer :D:\\");这种是纯java的方式,不受系统的约束Desktop.getDesktop().open(new File("D:\\文件夹"));...原创 2019-03-13 09:09:51 · 3895 阅读 · 2 评论 -
实现Runnable接口适合资源的共享
Java当中,创建线程通常用两种方式:继承Thread类实现Runnable接口 但是在通常的开发当中,一般会选择实现Runnable接口,原因有二: 1、避免单继承的局限,在Java当中一个类可以实现多个接口,但只能继承一个类 2、适合资源的共享 原因1我们经常听到,但是2是什么呢?下面用一个例子来解释: 有5张票,分两个窗口卖:继承Thread类:public class Thr原创 2017-03-13 23:19:18 · 1422 阅读 · 2 评论 -
使用字节流复制一个文件夹
package com.iotek.iodemo;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;public class CopeDirDemo { public static void main(String[]原创 2017-03-21 21:12:14 · 1060 阅读 · 0 评论 -
java中多态的体现思想
我们都知道,面向对象有三大特征:封装,继承,多态; 多态:就是指相同的事物的不同状态,比如:水。水可以有三种状态。那么在JAVA中的多态也可以理解成这个意思,就是: 将父对象设置成为和一个或多个它的子对象相等的技术, 比如Animal = Dog; 当满足这三个条件 1.有继承 2. 有重写 3. 要有父类引用指向子类对象,就有多态的影子; 多态性使得能够利用同一类(父类)引用不同类的原创 2016-07-21 00:45:48 · 2062 阅读 · 0 评论 -
相对路径和绝对路径的问题
相对路径和绝对路径的问题 作为初学者的我,前两天被这个问题困扰,查阅很多资料以后,在这做个总结。相对路径:官方一点的说法,就是从当前路径开始的路径。通俗一点, 如果源文件和引用文件在同一个目录里,直接写引用文件名即可。 **1、同一个目录的文件引用** 现在新建一个源文件login.html文件,在login.html文件中引用photo.jpg 文件作为超链接。、假设login.html原创 2016-12-06 00:06:20 · 500 阅读 · 0 评论 -
浅谈泛型
泛型是Java SE 1.5的新特性,泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。 Java语言引入泛型的好处是安全简单。 在Java SE 1.5之前,没有泛型的情况的下,通过对类型Object的引用来实现参数的“任意化”,“任意化”带来的缺点是要做显式的强制类型转换,而这种转换是要求开发者对实际原创 2016-12-06 23:04:39 · 311 阅读 · 0 评论 -
Java数组中常见的排序算法
今天在数组中用到了排序算法,经过查找资料之后,在这总结三种常见的排序算法。/*** 冒泡排序法*/ public void fun1(){ int[] array= {10,3,9,4,8,66,88,319}; //N个数要比较的轮数为N-1 for (int i = 0; i < array.length-1; i++) {原创 2017-02-05 20:15:00 · 405 阅读 · 0 评论 -
设计模式之—单例模式
单例模式定义: 单例模式的意思就是只有一个实例,单例模式确保某一个类只有一个实例(创建一个对象),而且自动的实例化并且向其系统中提供这个实例,这个类叫做单例类。单例模式要点:某个类只能有一个实例它必须自行创建这个实例它必须自行向系统中提供这个实例/** * 饿汉式单例,加载类的时候,这个对象已经产生了 */class SingleTon{ private sta原创 2017-02-06 17:08:43 · 265 阅读 · 0 评论 -
多态中对象的上下转型
向上转型: 由子类转换成为父类,在继承图上是向上移动的,称之为向上转型。 特点: 1、首先是安全的,但是可能会导致子类的方法的丢失。 2、父类的引用指向子类的对象 与之相反的是向下转型 特点: 1、不安全 2、子类的对象指向父类的引用 class Animal1{ String name; public Animal1(String name){原创 2017-02-06 23:15:50 · 659 阅读 · 0 评论 -
String、StringBuffer和StringBuilder
String类代表字符串,String一旦创建就不能改变,就不能改变,如果需要大量的字符串修改操作,就要到StringBuffer/StringBuilder,或者字符串数组,最终结果会被转换成为String对象。 StringBuffer是线程安全的可变字符序列。一个类似于 String 的字符串缓冲区,通过某些方法调用就能够改变该序列 的长度和内容。//举一个具体的例子来说明,我们要把1到10原创 2017-02-07 22:38:04 · 275 阅读 · 0 评论 -
Date、SimpleDateFormat日期类和Calender类
Date date = new Date(); System.out.println(date); //返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数。 System.out.println(date.getTime()); Long d = 1486539701857l;原创 2017-02-09 13:32:21 · 358 阅读 · 0 评论 -
Java随机产生四位验证码
import java.util.Random;public class RandomGenDemo { public static void main(String[] args) { System.out.println("四位的验证码为:"+RandomGen.codeGen()); } }class RandomGen{ public stat原创 2017-02-09 17:22:10 · 1729 阅读 · 0 评论 -
Map容器
class Demo1{ public void fun1(){ Map<String, Integer> map= new HashMap<>(); map.put("Jay", 20); map.put("Jolin", 35); map.put("Eason", 40); Set<String> ks = m原创 2017-02-13 16:35:08 · 271 阅读 · 0 评论 -
统计字符串出现的次数
class AccountUntil{ public static Map<String, Integer> account(String[] strings){ Map<String, Integer> data = new HashMap<>(); for (int i = 0; i < strings.length; i++) {原创 2017-02-13 19:45:19 · 533 阅读 · 0 评论 -
层级显示文件目录结构信息案例
案例介绍:给定一个目录,要求按层级显示目录结构信息,文件名后面加上*或者是\来表示文件夹案例设计:使用递归算法使用File类当中的ListFile来遍历文件夹使用List集合package javademo;import java.io.File;import java.util.ArrayList;import java.util.List;public class IteratorD原创 2017-03-20 22:22:55 · 2232 阅读 · 0 评论 -
java中this和super关键字的用法及其区别
1.this关键字this只能用于实例有关的代码块中,如实例方法,构造方法,实例初始化代码块或实例变量的初始化代码块等,this就代表当前或者正在创建的实例对象的引用,通常可以利用这一关键字实现与局部变量同名的实例变量的调用。在构造方法中还可以用this来代表要显式调用的其他构造方法。除此之外,使用this关键字都将引发编译时错误。1.在类的构造方法中使用this关键字 在构造方法内部使用this原创 2016-06-06 19:44:40 · 2778 阅读 · 3 评论