[前面的话] 在实际项目中学习知识总是最快和最有效的,既能够较好的掌握知识,又能够做出点东西,还是简单的知识总结,最近一直在总结笔记,写的东西还是比较水,希望慢慢可以写出一些干货. 学习过程中的小知识点总结,基础文章,选择阅读. [知识汇总] 一. 获取一个类中方法的详细信息 1. getDeclaredMethods()方法和getMethods()的区别 1)getDeclaredMethod*()获取的是类自身声明的所有方法,包含public.protected和private方法. 2)…
Qt Model/View 学习笔记 (七) Delegate  类 概念 与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件.一般来讲, view负责把数据展示 给用户,也处理用户的输入.为了获得更多的灵性性,交互通过delegagte执行.它既提供输入功能又负责渲染view中的每个数据项. 控制delegates的标准接口在QAbstractItemDelegate类中定义.Delegates通过实现paint()和sizeHint()以达到渲染内容的目的.然而,简…
在[Java学习笔记之二十五]初步认知Java内部类中对匿名内部类做了一个简单的介绍,但是内部类还存在很多其他细节问题,所以就衍生出这篇博客.在这篇博客中你可以了解到匿名内部类的使用.匿名内部类要注意的事项.如何初始化匿名内部类.匿名内部类使用的形参为何要为final. 一.使用匿名内部类内部类 匿名内部类由于没有名字,所以它的创建方式有点儿奇怪.创建格式如下: new 父类构造器(参数列表)|实现接口() { //匿名内部类的类体部分 } 在这里我们看到使用匿名内部类我们必须要继承一个父类或者…
接着前面的学习: java学习笔记6--类的继承.Object类 java学习笔记5--类的方法 java学习笔记4--类与对象的基本概念(2) java学习笔记3--类与对象的基本概念(1) java学习笔记2--数据类型.数组 java学习笔记1--开发环境平台总结 本文地址:http://www.cnblogs.com/archimedes/p/java-study-note7.html,转载请注明源地址. 1.终结类与终结方法 被final修饰符修饰的类和方法,终结类不能被继承,终结方法…
上一篇 获取 类 的字节码文件 我们讲到了获取类的字节码文件的三种方法 第三种方法通过getClass("全路径名")获取字节码文件最符合要求 1.获取构造方法 先贴上我们要获取的类结构 import java.util.Date; public class Student { private String name; private Integer age; private Date Birthday; public Student(){ } private Student(Stri…
把自己立成帆,才能招来凤. 运行环境 JDK8 + IntelliJ IDEA 2018.3  本文中使用的jar包链接 https://files.cnblogs.com/files/papercy/jsoup_jar%E5%8C%85.rar 获取构造函数(方法) 需要获取类的结构 1 package com.wenhaitao.Demo2; 2 3 public class Student { 4 private String name; 5 private int age; 6 priv…
object类 java中objec是所有类公共的父类,一个类只要没有明显的继承某一类,那么它就是继承object类. 例如 class Person {......};和class Person extends Object{......}是一样的.如果我们的Studdent继承了Person类,继承结构就应该是 这时大家可能会想,为什么要默认继承object类,把objec类作为公共的父类有什么用? object类作为公共的父类,那么所有的子类都可以调用Object类中的方法. 下列结束两个…
一.基本概念:在学习Java泛型的过程中, 通配符是较难理解的一部分. 主要有以下三类:1. 无边界的通配符(Unbounded Wildcards), 就是<?>, 比如List<?>. 无边界的通配符的主要作用就是让泛型能够接受未知类型的数据. 2. 固定上边界的通配符(Upper Bounded Wildcards): 使用固定上边界的通配符的泛型, 就能够接受指定类及其子类类型的数据. 要声明使用该类通配符, 采用<? extends E>的形式, 这里的E就是…
1.通过继承来开发超类(superclass) 2.使用super 关键词唤起超类的构造方法 3.在超类中覆盖方法 4.区分override和overload 5.在Object类中探索toString()类 6.发现多态性和动态绑定 7.描述解释为什么向下转型是必须的 8.在Object类中探索equals 方法 9.存储,取回,实现ArrayLis的对象 10.使用ArrayList类实现Stack 11.超类中使用数据和方法,protected 12.使用final模块来禁止类和方法的覆盖…
java.io包下的File类用于描述和创建一个文件或文件夹对象,只能对文件或文件夹做一些简单操作,不能修改文件的内容,功能比较有限.下面是对于File类中常用方法的程序演示. [1] 演示程序一 package pack01; import java.io.*; import java.sql.Date; public class FileTest { public static void main(String[] args) { File file1 = new File("d:/TEST…
可以创建几个对象? n多个:大部分的类,都可以随意创建对象,只要内存不爆掉 1个:比如单例类 有限的几个:采用单例类的设计思路,可以只允许创建少数的几个特定的对象:还有就是枚举类. 创建少数几个对象,不用枚举类实现 package testpack; public class Test1{ public static void main(String[] args) { Season s=Season.getSeason("秋天"); System.out.println(s.getN…
String类总结 String类概述: java.lang.String 类是字符串操作类 String类的常用构造方法: //1.直接赋值 String str= "hellojava"; //2.new对象,参数是字符串 String str = new String("helloworld"); //3.参数是一个字符数组 char[] c= {'a','b'}; String str= new String(c); //4.参数是字符数组的一部分 Stri…
抽象类是由abstract修饰的类,定义方式如public abstract class A{...}. 接口由interface修饰,定义方式如public interface B{...}. 抽象类与接口的具体特性见下文. 抽象类: (1).抽象类中由abstract修饰的方法称为抽象方法,抽象方法没有具体实现,要等子类继承后再实现:声明方式如public abstract void run();. (2).只要某类中有一个方法为抽象方法,该类就必须要定义为抽象类. (3).抽象类不一定有抽…
1.类的概念:将现实生活中的事物抽象成了代码(类),我们可以使用自定义的数组类型(类)来描述现实生活中的事物. 2.分析:用一部手机来分析,手机可以打电话,上网,听音乐,这些就是方法,手机有型号,颜色,大小,这些就是属性. 举例: 写一个手机类, public class Phone{ String color; String brand; double size; } 写一个测试类,和手机类在一个文件夹下, public class TestPhone{ public static void…
package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 类 Math:包含用于执行基本数学运算的方法,如初等指数.对数.平方根和三角函数. * * Math类的常用字段: * static double E :比任何其他值都更接近 e(即自然对数的底数)的 double 值. * static double PI :比任何其他值都更接近 pi(即圆的周长与直径之比)的…
1.介绍 上一篇博客介绍的是java中经常使用的操作文件的方式,本篇博客着重解说一下,在Java中是怎样来操作目录的.主要是利用的是Java.IO包以下的File类,本篇博客着重解说一下该类的构造函数和经常使用的方法. 2.File类的字段摘要 File类为我们提供了与系统有关的路径切割符,字段分别例如以下 static String pathSeparator:返回值为字符串,结果表示分号; static char pathSeparatorChar:返回值为char类型,结果表示分号 sta…
1.路径分隔符,文件分隔符. 路径分隔符(“:”) 文件名称分隔符(“\”windows,“/”Linux等). 不同平台使用的文件分隔符是不一样的,所以File类中提供了分隔符常量,它会根据平台的不同自行选择对应的分隔符. 这样便于跨平台,假如我们写死的话,就具有一定的局限性. 路径分割符:File.PathSeparator 文件名称分割符:File.separator import java.io.File; public class Test { public static void m…
1.自定义类class 使用类的形式, 对现实中的事物进行描述. 类是引用数据类型. 事物: 方法,变量. 方法:事物具备的功能. 变量:事物的属性. 格式: public class 类名{ //属性定义(变量): 修饰符 数据类型 变量名 = 值; //功能定义(方法): 修饰符 返回值类型 方法名(参数列表){ } } 2.使用自定义类 创建引用类型变量的格式: 数据类型 变量名 = new 数据类型(); 实现引用类型的步骤: 1.导入包. 类在同一个文件夹,不需要导入包. 2.创建引用…
一.泛型:简单说就是对对象类型进行限定的技术 public class GenericDemo { public static void main(String[] args){ /*泛型作为1.5版之后的新技术,分两步使用 * 1.在类名之后用<类型参数>,这里就像函数中的普通参数一样命名即可 * 2.在生成对象和返回该对象参数时需要明确具体的类型,相当于传入实参 * 上面说的是泛型类,除此之外,泛型还可以用于类中方法和接口 */ GenericTest<Person> gt=n…
System类常用总结 System类概述 java.lang.System类,系统属性信息工具类 常用静态方法: 1. public static long currentTimeMillis() 获取当前系统时间与1970年01月01日00:00之间的毫秒差值 2. public static void exit(int status) 用来结束正在运行的java程序,参数是一个数字,通常传入0为正常状态,其他为异常状态 3. public static void gc() 用来运行jvm中…
谈到final关键字,想必很多人都不陌生,在使用匿名内部类的时候可能会经常用到final关键字.另外,Java中的String类就是一个final类,那么今天我们就来了解final这个关键字的用法. 一.final关键字的基本用法 在Java中,final关键字可以用来修饰类.方法和变量(包括成员变量和局部变量).下面就从这三个方面来了解一下final关键字的基本用法. 1.修饰类   当用final修饰一个类时,表明这个类不能被继承.也就是说,如果一个类你永远不会让他被继承,就可以用final…
1 实现一个类MyInputStream读取文件,且不能抛出异常 public class TestDemo { public static void main(String[] args) throws Exception { InputStream in = new MyInputStream("d:/a/a.txt"); ]; ; ){ String s = ,len); System.err.print(s); } in.close(); } } class MyInputSt…
Java类的高级特性: {Java管理文件机制:类包. 同一个包中的类互相访问时,可以不指定包名. 同一个包中的类不必存放在同一位置,如com.lang.class1和com.lang.class2可以分别放在不同盘中,只要将CLASSPATH分别指向两个位置即可. Java包的命名规则是全部小写字母.} 1.内部类 如果在外部类和非静态方法之外实例化内部类对象,需要使用外部类.内部类的形式指定该对象的类型! 例: public static void main(String args[]){…
head first java page 74 实参: argument 形参: parameter 方法会运用形参, 调用的一方会传入实参. 实参是传给方法的值.当它传入方法后就成了形参, 参数跟局部变量是一样的.   ? page76 方法可以有多个参数, 在声明的时候要用逗号分开, 传入的时候也用逗号分开 例: void go() { TestStuff t=new TestStuff(); t.takeTwo(12,34); } void takeTwo(int x,int y){ in…
前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要,下面跟我一起开启本次的学习之旅吧. 正文 线程与进程 1 线程:进程中负责程序执行的执行单元 线程本身依靠程序进行运行 线程是程序中的顺序控制流,只能使用分配给程序的资源和环境 2 进程:执行中的程序 一个进程至少包含一个线程 3 单线程:程序中只存在一个线程,实际上主方法就是一个主线程 4 多线程:在一个程序中运行多个任务 目的是更好地使用CPU资源 线程的实现 继承Thread…
可以将一个类的定义放在另一个类的定义内部,这就是内部类. 内部类是一个非常有用的特性但又比较难理解使用的特性(鄙人到现在都没有怎么使用过内部类,对内部类也只是略知一二). 第一次见面 内部类我们从外面看是非常容易理解的,无非就是在一个类的内部在定义一个类. public class OuterClass { private String name ; private int age; public String getName() { return name; } public void set…
数组工具类Arrays Java提供的Arrays类里包含的一些static修饰的方法可以直接操作数组.若将里面的方法用熟的话,那开发效率会大大提高.下面介绍其中的方法. List<T> asList(T... a) 作用:将指定数组或数组元素,转换成固定大小的List. 用法: String[] strArr = { "aaa", "bbb", "vvv" }; //用法1:参数是数组引用 List<String> li…
一.String类一般字符串 声明字符串 >>String str 创建字符串 >>String(char a[])方法用于将一个字符数组创建为String对象 >>String(char a[],int offset,int length)方法用于提取字符数组a中的一部分创建一个字符串对象,参数offset表示开始截取字符串的位置,length表示截取字符串的长度 >>String(char a[] value)方法可用于分配一个新的String对象,使其…
JavaBean是一个标准,遵循标准的Bean是一个带有属性和getters/setters方法的Java类. JavaBean的定义很简单,但是还有有一些地方需要注意,例如Bean中含有boolean类型的属性.我们知道对于一个属性来说,如果其命名为test,那么其getter和setter方法一般为getTest()和setTest.但是如果test为一个布尔类型,那么其getter和setter方法为isTest()和setTest().这是一个区别 public class BeanTe…
抽象类: 定义了一系列的属性和方法的类.抽象方法是不能直接实现功能.需要通过继承去实现具体方法.为了将静态的业务流程跟动态的实现分开. 工厂生产产品时,都需要准备材料,执行组装,产品销售等流程.但是对于不同的工厂.在执行这些流程是不同的.比如不同的工厂需要准备的材料不同. 创建抽象类的关键字是abstract public abstract class Factory { public abstract void prepared_matrial(); public abstract void…