代码来源于高淇JAVA教学视频 谢谢高淇老师的教学. 因为自己在学习的过程中发现了很多困难点,总结下希望对自己接下来学框架提升.给像我一样得初学者方便. SORM框架是一个简单的ORM,关系对象映射,可以通过这个框架方便的更改和操作一些数据库的东西,在框架运行的时候也会根据数据库中的表生成相应的Javabean在po包下.通过直接对po包下的操作在运用query中的一些操作就可以实现对数据库的操作.思路会在代码中注释. QueryFactory直接生产出Query给用的人调用,Query作为一个…
1.Java中的权限有两个层次,一个是类这一层,另一个是类成员那一层. 类这一层: public class可以在本包内被访问,也可以在包外被访问.而没有被public修饰的class只能在本包内被调用. 类成员这一层:(注意这只是针对类成员的) private:只有本类中可以访问default:本包可以访问(不写修饰默认就是这个)protected:本包.其它包的子类内部可以访问public:所有都可以访问 2.Java中声明子类的方法class child extends parent {}…
Java--reflect 一.Class类的使用 什么是Class类? 1:在面向对象的世界中,万事万物皆对象. java语言中,静态的成员,普通数据类型类是不是对象呢? 是,对象!是类的对象! 类是谁的对象吗? 类也是是对象,类是java.lang.Class 类的实例对象! 现在有个类它的名字就是Class! There is a class name Class. 任何一个类都是Class的实例对象,这种实例对象有三种表示方式 class Foo{ } Foo f = new Foo()…
参考https://www.cnblogs.com/lilinzhiyu/p/8125195.html 5.1 Lock接口 锁是用来控制多个线程访问共享资源的方式. 一般来说一个锁可以防止多个线程同时访问共享资源(但有些锁可以允许多个线程访问共享资源,如读写锁). 在Lock接口出现前,java使用synchronized关键字实现锁的功能,但是在javaSE5之后,并发包中提供了Lock接口(以及其实现类)用来实现锁的功能. Lock提供了与synchronized相似的功能,但必须显示的获…
一.总结 1.引入包的概念的原因和包的作用比如有多个人开发一个大型程序,A定义了一个Math.java类,B也定义了一个Math.java类,它们放在不同目录,使用的时候也是用目录来区分,包实际上就是一个文件夹(可以含有多级子目录)路径名.包的作用就是用来区分同名的类(冲突问题). 2.使用步骤package:Java源文件中:package 包名.子包名:eg: package a.b.c.d;编译命令:javac -d <dir> <file.java> 表示在<dir&…
1.String的两种实例化方式 String str="hello";//直接赋值的方式: String str=new String("hello");//实例化的方式: 两种实例化方式的比较 public class Test{ public static void main(String args[]){ String str1="hello"; String str2=new String("hello"); Str…
java中JVM虚拟机内存模型详细说明 2012-12-12 18:36:03|  分类: JAVA |  标签:java  jvm  堆内存  虚拟机  |举报|字号 订阅     JVM的内部结构如下图: 一个优秀Java程序员,必须了解Java内存模型.GC工作原理,以及如何优化GC的性能.与GC进行有限的交互,有一些应用程序对性能要求较高,例如嵌入式系统.实时系统等,只有全面提升内存的管理效率,才能提高整个应用程序的性能. 本文将从JVM内存模型.GC工作原理,以及GC的几个关键问题进行…
前言 大家好啊,我是汤圆,今天给大家带来的是<Java中的三大特性 - 超详细篇>,希望对大家有帮助,谢谢 这一节的内容可能有点多,大家可以选择性的来看 简介 Java的三大特性:封装.继承.多态 乍一听,好像很高大上,其实当你真正用的时候,会发现高大上的还在后面呢... 热身 在正式讲解三大特性之前,先普及几个知识 1. 访问权限修饰符 Java中关于访问权限的四个修饰符,表格如下 private friendly(默认) protected public 当前类访问权限 √ √ √ √ 包…
Java后端高频知识点学习笔记1---Java基础 参考地址:牛_客_网 https://www.nowcoder.com/discuss/819297 1.重载和重写的区别 重载:同一类中多个同名方法根据不同的传参来执行不同的处理逻辑:方法名必须相同,参数类型不同.个数不同.顺序不同:返回值类型可以相同也可以不同(因为返回值类型不是方法签名的一部分) 重写:子类对父类的方法的实现过程进行重新编写.方法名,参数列表和返回值类型都不能改变.抛出的异常范围小于等于父类,访问修饰符范围大于等于父类.…
上次写JAVA的反射机制学习笔记(一)的时候,还是7月22号,这些天就瞎忙活了.自己的步伐全然被打乱了~不能继续被动下去.得又一次找到自己的节奏. 4.获取类的Constructor 通过反射机制得到某个类的构造器,然后调用该构造器创建该类的一个实例 Class<T>类提供了几个方法获取类的构造器. public Constructor<T> getConstructor(Class<? >... parameterTypes) 返回一个 Constructor 对象,…
引用自:http://blog.csdn.net/langhong8/article/details/50938041 这篇文章主要介绍了Java中的字符串常量池详细介绍,JVM为了减少字符串对象的重复创建,其维护了一个特殊的内存,这段内存被成为字符串常量池或者字符串字面量池,需要的朋友可以参考下 Java中字符串对象创建有两种形式,一种为字面量形式,如String str = "droid";,另一种就是使用new这种标准的构造对象的方法,如String str = new Stri…
java中的compareto方法的详细介绍 Java Comparator接口实例讲解(抽象方法.常用静态/默认方法) 一.java中的compareto方法 1.返回参与比较的前后两个字符串的asc码的差值,如果两个字符串首字母不同,则该方法返回首字母的asc码的差值 String a1 = "a"; String a2 = "c"; System.out.println(a1.compareTo(a2));//结果为-2   2.即参与比较的两个字符串如果首字…
很多东西就是要细细的品读然后做点读书笔记,心理才会踏实- Javascript对象本质上就是键值对的集合(Hash结构),但是键只能是字符串,这有一定的限制. 1234 var d = {}var ele = document.bodyd[ele] = 'This is body'console.log(d['[object HTMLBodyElement]']) 上段代码的原意是将DOM节点作为对象d的键,由于对象只接受字符串,所以ele被自动转为[object HTMLBodyElement…
以前一直对于java中容器的概念不理解,虽然学习过,但始终没有认真理解过,这几天老师提出了这样一个问题,你怎么理解java中的容器.瞬间就蒙了.于是各种搜资料学习了一下,下面是我学习后整理出来的的一些心得.欢迎各路大神指教 在书写程序时,我们常常需要对大量的对象引用进行管理.为了实现有效的归类管理,我们常常将同类的引用放置在同一个数据容器中. java容器的组成 一.Collection接口:定义了存取一组对象的方法,他的子接口Set和List分别定义了存取方法.Set中的数据对象没有顺序且不可…
Java中,所有链表实际上都是双向链表的,即每个结点还存放在着指向前驱结点的引用. LinkedList中的contains方法检测某个元素是否出现在链表中. LinkedList类提供了一个用来访问某个特定元素的get方法,但是其效率并不高. eg: LinkedList<String> list=new LinkedList<>(); for (int i=0;i<List.size();i++) list.get(i); 绝对不应该使用这种让人误解的随机访问方法来遍历链…
Java中的equals是十分重要的,和= =要区别开来,现在小结其主要内容,而且要将 = =和 equals列为重要的对比概念来学习 1.声明格式    public  boolean equals(Object obj) 其比较规则为:当参数obj引用的对象与当前对象为同一个对象时,就返回true,否则返回false. 比如以下两个对象animal1和animal2,引用不同的对象,因此用==或equals()方法比较的结果为false;而animal1和animal3变量引用同一个DOg对…
干着java的活,但是看的都是一些偏底层的东西(或者我根本就没有看),有点荒废了java的学习. 最近一直在用到一个类是BigDecimal,但都是模棱两可地在那儿用,并没有深入研究这个类的细节,感觉不能再拖了. BigDecimal,从名字来看就是进行大数运算的,不光这样,还广泛用于小数的精确运算. 当你接触到和钱有关的计算的时候,这个类还是很有用滴. 先来看一个例子 package com.tuhooo.bigdecimal; /** * Created by tuhooo on 2017/…
继承:把多个类中同样的内容提取出来.定义到一个类中,其它类仅仅须要继承该类.就能够使用该类公开的属性和公开的方法.   继承的优点:提高代码的复用性.提高代码的可维护性.让类与类之间产生关系,是多态存在的一个前提.   继承的弊端:提高了类与类之间的耦合性.   开发的原则:低耦合.高内聚 耦合:类与类之间的关系 内聚:自己单独完毕某件事情的能力.   在Java中仅仅同意单继承.一个类假设没有显示的继承其它类.则该类的默认父类为Object类. Object类是全部类的父类.   Java支持…
java中String类的相关操作如下: (1)初始化:例如,String s = “abc”; (2)length:返回字符串的长度. (3)charAT:字符操作,按照索引值获得字符串中的指定字符 如,下面例子把字符c赋值为'e' String str="abcdef"; char c=str.charAt(4); (4)字符串连接 1)concat 2)+ 注意:当使用+时不仅可以连接字符串,也可以连接其他类型(原因参加博客中另一篇文章java中的toString方法),但至少有…
一.通常的定义常量的方法 public class Sex{ public final static int MALE = 1; public final static int FEMALE=2; } 使用的时候,你能够在程序中直接引用这些常量.可是.这样的方式还是存在着一些问题. 类型不安全 因为颜色常量的相应值是整数形.所以程序运行过程中非常有可能给颜色变量传入一个随意的整数值.导致出现错误. 没有命名空间 因为颜色常量仅仅是类的属性,当你使用的时候不得不通过类来訪问. 一致性差 由于整形枚…
多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程各重要知识点.掌握了上图中的各知识点,Java中的多线程也就基本上掌握了.主要包括: Java线程具有五中基本状态 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread(); 就绪状态(Runnable):当调用线程对象的start()方法(t…
java不能直接访问操作系统底层,而是通过本地方法来访问.Unsafe类提供了硬件级别的原子操作,主要提供了以下功能: 1.通过Unsafe类可以分配内存,可以释放内存: 类中提供的3个本地方法allocateMemory.reallocateMemory.freeMemory分别用于分配内存,扩充内存和释放内存,与C语言中的3个方法对应. 2.可以定位对象某字段的内存位置,也可以修改对象的字段值,即使它是私有的: public native long allocateMemory(long l…
1.static引入: 通常来说,当创建一个类是,就是在描述那个类的对象的外观与行为.除非用new创建那个类的对象,否则实际并未获取任何对象.当执行new来创建对象时,数据存储空间才被分配,七方法才供外界调用. 但是有两种情况是上述方法无法解决的.一种是,只想为某特定域分配单一存储空间,而不去考虑究竟要创建多少对象.甚至根本就不创建对象.另一种是,希望某种方法不与包含他的类的任何对象关联在一起.也就是说没有创建对象,也能调用这个方法. static可以满足这两方面需求.声明一个static时,就…
一.线程类  1.新建状态(New):新创建了一个线程对象.        2.就绪状态(Runnable):线程对象创建后,其他线程调用了该对象的start()方法.该状态的线程位于可运行线程池中,变得可运行,等待获取CPU的使用权.        3.运行状态(Running):就绪状态的线程获取了CPU,执行程序代码.        4.阻塞状态(Blocked):阻塞状态是线程因为某种原因放弃CPU使用权,暂时停止运行.直到线程进入就绪状态,才有机会转到运行状态.阻塞的情况分三种:   …
java平台 1.J2SE java开发平台标准版 2.J2EE java开发平台企业版 java程序需要在虚拟机上才可以运行,换言之只要有虚拟机的系统都可以运行java程序.不同系统上要安装对应的虚拟机才可以运行java程序 开发步骤 1.编写源文件 (.java) 2.编译源文件为类文件(.class)可用J2SE或J2EE编译 3.在虚拟机上运行 注释 //单行注释 /* */多行注释 java内容介绍 java编程可以分成三个方向: 1.java se (j2se)桌面开发  java中…
第七周学习笔记 MySQL(数据管理系统)学习 知识点总结: 不能通过关闭MySQL数据库服务器所占用的命令行窗口来关闭MySQL数据库. 如果MySQL服务器和MySQL管理工具驻留在同一台计算机上,主机名可以是localhost或127.0.0.1. JDBC是允许用户在不同数据库之间做选择的一个抽象层.JDBC允许开发者用JAVA写数据库应用程序,而不需要关心底层特定数据库的细节. 查询操作: 向数据库发送SQL查询语句,先用statement声明对象,已创建的连接对象调用creatSta…
JVM学习笔记二之GC GC即垃圾回收,在C++中垃圾回收由程序员自己来做,例如可以用free和delete来回收对象.而在Java中,JVM替程序员来执行垃圾回收的工作,下面看看GC的详细原理和执行过程. 1.对象已死? 1.1 引用计数法 Java GC不采用引用计数法是因为无法解决对象互相引用导致无法回收的问题. 1.2 可达性分析法 从GC ROOT开始搜索,搜索不到的并且经过第一次标记.清理后未复活的对象. GC ROOT包括: 虚拟机栈中引用的对象 方法区中静态属性引用的对象 方法区…
编解码学习笔记(一):基本概念 媒体业务是网络的主要业务之间.尤其移动互联网业务的兴起,在运营商和应用开发商中,媒体业务份量极重,其中媒体的编解码服务涉及需求分析.应用开发.释放license收费等等.最近因为项目的关系,需要理清媒体的codec,比较搞的是,在豆丁网上看运营商的规范 标准,同一运营商同样的业务在不同文档中不同的要求,而且有些要求就我看来应当是历史的延续,也就是现在已经很少采用了.所以豆丁上看不出所以然,从 wiki上查.中文的wiki信息量有限,很短,而wiki的英文内容内多,…
Java编程思想第4版学习笔记(二) 第三章 操作符 & 第四章 控制执行流程(流程控制语句)         第三章和第四章的内容主要是讲操作符和流程控制语句,Java的大多数操作符和流程控制语句都和C/C++的十分类似,因此把这两章内容汇成一章,挑出Java独特的地方进行学习.         第三章         知识点1:P39,3.2,操作符,优先级       Java操作符和其他语言一样,作用于操作数,产生新值.各个操作符的优先级和结合性类似C/C++.       这里有一些特…
<Java编程思想>学习笔记(二)--类加载及执行顺序 (这是很久之前写的,保存在印象笔记上,今天写在博客上.) 今天看Java编程思想,看到这样一道代码 //: OrderOfInitialization.java // Demonstrates initialization order. // When the constructor is called, to create a // Tag object, you'll see a message: class Tag { Tag(in…