![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
学习笔记
筱杰onejay
这个作者很懒,什么都没留下…
展开
-
Java异常和异常处理
异常分类异常:程序不正常的行为或者状态int a = 5/0;数组越界访问读取文件,结果该文件不存在异常处理:程序返回到安全状态 允许用户保存结果,并以适当方式关闭程序Throwable:所有错误的祖先Error:系统内部错误或者资源耗尽Exception:程序有关的异常RuntimeException:程序自身错误5/0,空指针,数组越界非RuntimeException:外界相关错误打开一个不存在文件加载一个不存在的类Unchecked Exception:(编译器原创 2021-03-25 10:00:01 · 111 阅读 · 2 评论 -
Java常用类
Java类库概述包名以java开始的包是核心包包名以javax开始的包是扩展包数字相关类整数——int,short,long浮点数——float,double大数——BigInteger,BigDecimalBigInteger不支持+,需要用数.add(数)尽量用字符串对BigDecimal赋值BigDecimal需要注意截断,避免无限循环随机数——RandomnextInt()//返回一个随机intnextInt(int a)//返回一个[0,a)之间的随机intnextDou原创 2021-03-24 10:22:17 · 75 阅读 · 0 评论 -
package、import、classpath
所有的java类都是放置在同一个目录下面的,因此类之间相互调用无需显式声明调用同一个目录下,两个类名字不能相同文件过多,查找和修改都不易,且容易出错Java支持多目录放置Java,并通过package/import/classpath/jar等机制配合使用,支持跨目录放置和调用Java类package和C++中的namespace类死,Java类文件的第一句话给出包的名称引用类的时候,必须采用全程引用;程序正文可以用短名称包名尽量唯一因为域名是唯一的,因此常用域名做包名域名逆序,范围.原创 2021-03-23 14:41:05 · 130 阅读 · 0 评论 -
static、fianl和常量设计
1)staticJava中的特殊关键字可用在:变量依赖于类直接存在,不依赖于对象实例存在,是类里面的一个独立存在所有对象实例的变量值都共享存储在一个共同的空间(栈)方法无需通过对象来引用,而通过类名直接引用在静态方法中,只能使用静态变量而不能使用非静态变量静态方法禁止引用非静态方法类匿名方法块只在类第一次被加载时使用执行顺序:static块>匿名块>构造函数块代码缺陷:会给程序带来混淆,应当将块代码封装成函数再调用2)单例模式单例模式又名单态模式(Single原创 2021-03-23 13:59:01 · 81 阅读 · 0 评论 -
转型、多态和契约设计
1)类转型变量互相转化int a = (int)3.5;类型可以相互转型,但是只限制于有继承关系的类1.子类可以转换成父类,反之不可Human obj1 = new Man();//OKMan obj2 = new Human();//illegal若父类可以转换成子类,那么一定是这个情况:父类本身由子类转化而来Human obj1 = new Man();Man obj2 = (Man)obj1;2)多态类型转换带来的作用就是多态子类继承父类所有方法,但子类可以重新定义一个名原创 2021-03-07 12:50:27 · 76 阅读 · 0 评论 -
抽象类和接口
类:属性+方法一个完整的类:所有的方法都有实现(方法体)类可以没有方法,但是有方法就肯定要有实现一个完整的类才可以被实例化,被new出来若方法只有方法名、形参列表,没有方法体,那么所在类就被定义为抽象类抽象类关键字abstract生命抽象类的组成成员变量,个数不限具体方法,方法有实现抽象方法,加abstract关键字abstract方法不能被new抽象类也是类,一个类继承于抽象类,就不能继承于其他类子类可以继承抽象类,但一定要实现父类所有abstract方法,否则也被定义为抽象原创 2021-03-07 12:21:33 · 52 阅读 · 0 评论 -
继承
变量类型继承OO和OP的区别:面向过程编程语言没有继承,容易导致很多类型重复定义子类继承父类所有的属性和方法,但不能直接访问private成员子类继承父类的所有方法都可以直接使用子类继承父类时也会继承父类的父类的所有属性和方法,但不能直接访问private成员在同样方法名和参数情况下,本类的方法会比父类的方法优先级更高单根继承原则:每个类都只能继承一个类。即:若一个方法没有定义,那么默认此方法来自其父类。与C++对比:C++支持一个类继承多个类(方法指代不清)如果不写extends,ja原创 2021-03-07 12:04:59 · 55 阅读 · 0 评论 -
信息隐藏和this
1)面向对象法则:信息隐藏——通过类的方法来间接访问类的属性,而不是直接访问类的属性类的成员属性是private类的方法是public的,通过方法修改成员属性的值类成员是私有的privateget 和 set 方法是公有的public,统称getter和setter外界对于类成员的操作只能通过get和set方法2)this指针负责指向本类中的成员变量负责指向本类中的成员方法代替本类的构造函数...原创 2021-03-07 10:41:57 · 62 阅读 · 0 评论 -
构造函数
如何在对象产生时就给成员变量赋值?使用构造函数A obj = new A (10);构造函数名称必须和类名一样,且没有返回值Java有构造函数,但是没有析构函数·构造函数时制造对象·析构函数时清除对象每个变量只能存储在离它最近的{}中内存被占用,当变量被创建时;内存被回收,当变量消亡时Java具有捏村自动回收机制,故不需要析构函数垃圾回收器GC的回收算法关系到性能的好坏,是jvm研究方向的一个热点如果没有显式定义构造函数,那么java编译器会自动为该类产生一个空的无形参构造函数子类的构原创 2021-03-07 10:33:10 · 41 阅读 · 0 评论 -
java类和对象
对象 A obj = new A();A obj1 = new A();A obj2 = new A();以上是两个不同的对象,在内存中的地址不同obj在C/C++ 被称为指针;在Java中被成为reference对象赋值时reference赋值;基本类型赋值时直接拷贝值因为基本类型的变量值小,可以直接拷贝;对象则包含多个值,不容易复制,对象复制采用共享同一内存区域如何产生一个对象?A...原创 2021-03-07 10:22:13 · 55 阅读 · 0 评论 -
面向对象思想
对象调用过程:1.输入参数2.等待目标方法执行结束3.返回结果对象=属性+方法对象的规范=属性定义+方法定义Java中:对象是变量类就是类型,具有共性类规定对象应该有的属性内容和方法,对象是类的具体实现OO是OP(Oriented Procedure)的改进OP典型:C、Pascal基本类型(一个变量)=》结构体(多个变量)=》类(多个变量+方法)OO的优点举例:类可以继承,子类可以继承父类除了privat的所有内容基本类型无法做到,结构体无法控制包含粒度(范围)//C基本类型原创 2021-03-05 16:38:54 · 43 阅读 · 0 评论 -
自定义函数
函数必须放在类的范围内修饰词返回值函数名(形参){函数体}递归函数调用,需要注意终止性在同一个类中,函数名称可以相同,即重载函数,但函数参数的个数或者类型必须有所不同不能以返回值来区分同名的函数public static int add(int m, int n) { return m + n; } public static double add(double m, double n) //和第9行行数重载overload { return m + n;上述代码,函数.原创 2021-03-05 16:19:53 · 101 阅读 · 0 评论 -
选择和循环结构
选择结构if//单种caseif else//两种caseif else if else//多种case多重选择结构switch (表达式)多个case分支满足一个后,需要break最后一个分支为defaultswitch(a+b){case ccase dcase e default f}循环结构 while//针对表达式,如果表达式ture,则执行 do...while//先执行do的内容,再执行while for break//.原创 2021-03-05 16:08:03 · 40 阅读 · 0 评论 -
java基本类型和运算符
基本类型boolean布尔byte字节short/int /long 短整数/整数/长整数float/double 浮点数char 字符boolean只有true/false,默认是falsebyte1 byte = 8 bits-128~127,默认0byte占用空间为int的1/4多使用于二进制文件short16位,2字节,有符号,二进制补码,默认0,-2^15~2^15-1int32位,4字节,有符号,二进制补码,默认0,-2^31~2^31-1..原创 2021-03-05 15:53:40 · 47 阅读 · 0 评论 -
Java类结构和main函数
Class类类名与文件名完全一致一个Java文件只能由一个public class函数:System.out.print 输出System.out.println 输出再换行类是Java 中最基础逻辑单位内容不允许游离在类以外类的构成成员变量/属性成员方法/函数main函数一个class最多只能有一个main函数没有main函数的类不能主动执行,但可以被调用执行程序的入口都是main函数main函数的形参和前缀修饰符都不能被省略main函数不属于这个类的所拥有函..原创 2021-03-05 15:27:11 · 138 阅读 · 0 评论 -
配置Path
如何配置Path我的电脑(此电脑)->系统属性->高级系统设置->环境变量系统变量优先级高于用户变量,故在Windows系统中,在系统变量新建环境变量JAVA_HOME,并填入JDK路径。若是在Linux和Mac系统上,则在用户变量中配置。后编辑Path环境变量,增加%JAVA_HOME%\bin,并上移到顶端。打开cmd窗口,输入java -version观察是否出现版本号。再输入javac观察是否出现操作命令。若都出现,则成功。...原创 2021-03-05 14:52:07 · 137 阅读 · 0 评论