Java系列——Java基础
冷静BB
Java开发
展开
-
Java基础——类成员变量不初始化默认值
package com.yonyou.review.base;public class ClassMember { static int i; static char c; static String s; static float f; static double d; static byte b; static short sh; static long l; stat...原创 2016-11-19 13:33:41 · 3189 阅读 · 0 评论 -
Java基础——char int之间的转换
一个例子说明:char型的字符,如小写字母转成int型的数字的 package test;import java.util.Scanner;public class UnicoeTes { public static void main(String[] args) { printUnicode4Upper(); printUnicode4Lowwer(); p...原创 2017-09-30 08:30:41 · 2100 阅读 · 0 评论 -
java基础(四)——访问控制符
熟悉java的应该都知道java的4种访问控制符:public , protected, default(friendly), private。今天我也来总结下这4种访问控制符。可以通过以下这张表来记忆访问控制修饰符当前类同一包内子孙类其他包publicYYYYprote原创 2017-10-18 12:24:46 · 437 阅读 · 0 评论 -
java基础(五)——数据类型和方法传递类型
在java中,分为两大类数据类型:值类型和引用类型。其中,值类型又可以称为基本数据类型1.值类型(基本数据类型)(byte, short, int, long, float, double, char, boolean) 基本数据类型又可以分为数字类型(整数(byte,short,int,long)和浮点数(float,double))、字符型(char)、布尔型(boole原创 2017-10-18 14:32:35 · 1488 阅读 · 1 评论 -
java基础(一)——封装
1.什么是java的封装信息隐藏。隐藏对象的属性和实现的细节,仅对外提供公共访问方式。2.怎么实现封装一般使用private访问控制符实现3.封装有什么好处a.数据安全性提高了。private封装了类的数据项属性和方法实现细节,只有对象本身才能调用自己的资源,可以对数据的合法性进行校验b.隐藏了内部实现,可以随时对方法内部细节进行修改,而无需修改调用该方法的代码。只要保持得原创 2017-09-30 22:44:05 · 406 阅读 · 0 评论 -
java基础(三)——多态
1.什么是多态java多态指的是用基类的引用指向子类的对象。也就是编译时和运行时指向的对象不一样,编译时指向父类,运行时指向子类。package test;class Fathers{ //定义一个父类的run方法,因为是public的,会被子类的同名run方法覆盖 public void run() { System.out.println("父类的run方法"); }原创 2017-10-08 12:08:09 · 430 阅读 · 0 评论 -
java基础(七)——类型转换
首先来看一道java面试题:以下程序错误的是_____A: short s1 = 1; s1 = s1 + 1; B: short s1 = 1; s1 += 1;答案是A,A编译不通过,int型不能自动转化为short型,需要强制转换。 两者看起来似乎是一样的,关键在于 s1=s1+1是否等价于s1+=1。在我以前的认知里,s1 += 1;原创 2017-10-19 10:35:36 · 1547 阅读 · 0 评论 -
Java基础——IO流、序列化和反序列化
package com.xupk.serialize;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java....原创 2017-10-28 23:56:34 · 614 阅读 · 0 评论 -
java基础(八)——内部类
1.什么是内部类? 将一个类定义在另一个内的内部,也就是嵌套在另一个类里面,这就是内部类(可以看下面的代码,Inner类和StaticInner就是Outer的内部类)。其实也可以把内部类看做一个类的普通成员,类似成员变量,成员方法。2.内部类长什么样子?怎么定义?怎么调用?内部类跟普通类一样,只不过它是定义在另一个类的内部,可以用public, protecte原创 2017-10-22 11:51:00 · 365 阅读 · 0 评论 -
java基础(六)——数据类型的存储方式
转自:Java中基本数据类型的存储方式和相关内存的处理方式(java程序员必读经典)1.java是如何管理内存的 java的内存管理就是对象的分配和释放问题。(其中包括两部分) 分配:内存的分配是由程序完成的,程序员需要通过关键字new为每个对象申请内存空间(基本类型除外),所有的对象都在堆(Heap)中分配空间。转载 2017-10-18 16:35:20 · 1637 阅读 · 0 评论 -
java基础--值传递和引用传递
java中的值传递和引用传递值传递:方法调用时,实际参数把它的值传递给对应的形式参数,方法执行中形式参数值的改变不影响实际参 数的值。引用传递:也称为传地址。方法调用时,实际参数的引用(地址,而不是参数的值)被传递给方法中相对应的形式参数,在方法执行中,对形式参数的操作实际上就是对实际参数的操作,方法执行中形式参数值的改变将会影响实际参数的值。下面举例说明:传值---传递基本数据类型参数pub...原创 2016-11-19 14:00:29 · 407 阅读 · 0 评论 -
Java基础——finally return执行的先后顺序
先给出结论:return——>finally——>returnreturn语句先执行,不过没有立即返回,而是去执行finally语句,等finally语句执行完了,return语句再返回结果! 具体请看以下描述:有两种情况下finally语句是不会被执行的:(1)try语句没有被执行到,如在try语句之前就返回了,这样finally语句就不会执行,这也说明了fi...原创 2016-10-11 10:32:37 · 5321 阅读 · 0 评论 -
Java基础——javac 无法加载主类
原因是jdk安装时,jre目录跟jdk目录一致了;解决办法:卸载jdk(注意,先卸载java 7 update 80,再卸载java se development kit),然后重新安装,其中,jdk放到一个文件夹中,jre放到另一个文件夹中,总之不能放到同一个文件夹下面...原创 2016-08-04 21:57:44 · 363 阅读 · 0 评论 -
Java基础——自学java之路
前段时间逛论坛,总会有很多新手很迷茫,问到:到底该怎么学好Java,这个问题很重要,尤其对于像我们这样大多数都是靠自学的人来说,找到一个好的学习方法至关重要!于是乎,我就给大家回答了很多,突然间想到了很久以前,看过的马士兵老师的一篇关于Java自学之路的文章,于是在网上找了找,结果找到了,马士兵老师的视频,是我目前最为推崇的Java学习视频,虽然还有很多,如张孝祥、黎活明、李兴华老师等,他们的都很...转载 2015-01-16 14:14:07 · 1278 阅读 · 1 评论 -
Java基础练习——实现打印任意大小,任意多个菱形(在int数据类型下)
代码如下: import java.util.*;public class Circle{public static void main(String args[]){int n,m;Circle c=new Circle();//构造一个Circle实例Scanner scan = new Scanner(System.in);System.out.printl...原创 2015-01-13 14:28:17 · 981 阅读 · 0 评论 -
Java基础——逻辑运算符与或非
与或非运算符,都是先计算符号左边的值,再计算右边的值;例如:5>2 && 3+9<10先计算5>2,结果为true;再计算3+9<10,为false;最后计算true&&false,结果为false。 1.与运算(长路&、短路&&),当符号两边的值都为true时,结果才为true,否则为false1.1...原创 2017-09-29 23:17:15 · 7842 阅读 · 0 评论 -
Java基础——switch case用法
jdk1.7之前,switch里面只能接受int和char类型的数据;其中,多个case对应同一代码块,不能这样写——case 1,2,3:——只能是case 1: case 2: case 3:——一个case后面只能接一个整数。 package test;import java.util.Scanner;public class SwitchTest { public...原创 2017-09-29 23:03:35 · 2638 阅读 · 0 评论 -
Java基础——for循环及其优化
for循环1.首先知道,for循环的3个表达式的意思:表达式1: 一般为赋值表达式,给控制变量赋初值;表达式2: 关系表达式或逻辑表达式,循环控制条件;表达式3: 一般为赋值表达式,给控制变量增量或减量。3个表达式都可以为空,第2个表达式为空,表示条件一直为true,for无限循环。for(;;){ System.out.println("hello");}/...原创 2017-09-29 22:30:47 · 1032 阅读 · 0 评论 -
Java基础——JDK初探
本文来自于一次和群里猿友的交流,具体的情况且听LZ慢慢道来。 一日,LZ在群里发话,“招人啦。” 然某群友曰,“群主,俺想去。” LZ回之,“你年几何?” 群友曰,“两年也。” LZ憾言之,“惜了,三至五为佳。然如汝有扎实之基础,且附一技之长,倒也并非不可呀。” 群友惑,问之,“何为一技之长?” LZ抚须答曰,“皆可,吾之一技即为写。” 群友又...转载 2016-10-21 15:07:53 · 900 阅读 · 0 评论 -
Java基础——equals和==号比较
我们知道,栈内存里面存放的是方法里面的局部变量,可以理解为变量都是放到栈内存中的;堆内存存放的则是对象; ==比较:==可以比较数值类型(byte,short,int,long,char,float,double)和对象1.如果两个数值类型比较(不一定要求数据类型严格相同),则只要两个变量的值相等,返回true,如下返回的b是true:Int i = 65; float f...原创 2016-01-04 12:55:13 · 474 阅读 · 0 评论 -
Java基础——instanceof关键字的用法
instanceof运算符的前一个操作数通常是一个引用类型变量,后一个操作数通常是一个类(也可以是接口,可以把接口理解成一种特殊的类),它用于判断前面的对象是否是后面的类,或者其子类、实现类的实例。如果是,则返回true,否则返回false。在使用instanceof运算符时需要注意:instanceof运算符前面操作数的编译时类型要么与后面的类相同,要么与后面的类具有父子继承关系,否则会引起...原创 2015-01-18 20:23:49 · 2509 阅读 · 1 评论 -
Java基础——多态性
java引用变量有两个类型:一个是编译时类型,一个是运行时类型。编译时类型由声明该变量时使用的类型决定,运行时类型由实际赋给该变量的对象决定。如果编译时类型和运行时类型不一致,就可能出现所谓的多态(Polymorphism)。实例程序如下: class BaseClass{ public int book=6; public void base() { System.ou...原创 2015-01-16 13:41:18 · 517 阅读 · 0 评论 -
Java基础——java语言的4个访问控制符
java提供了4个访问控制级别:private,public,protected,defaultprivate(当前类访问权限):如果类里的一个成员(包括成员变量、方法和构造器等)使用private访问控制符来修饰,则这个成员只能在当前类的内部被访问。很显然,这个访问控制符用于修饰成员变量最合适,使用它来修饰成员变量就可以把成员变量隐藏在该类的内部。default(包访问权限):如果类里的...原创 2015-01-15 09:37:17 · 1807 阅读 · 0 评论 -
Java基础——方法
方法是类或对象的行为特征的抽象,方法是类或对象最重要的组成部分。方法在逻辑上要么属于类,要么属于对象。如果是static方法,则该方法属于类;否则属于类的实例。需要注意的是:同一个类的一个方法调用另外一个方法时,如果被调用方法是普通方法,则默认使用this作为调用者;如果被调用方法是静态方法,则默认使用类作为调用者。也就是说,所有方法都必须使用“对象.方法”或者“类.方法”的形式调用,而同一个...原创 2015-01-14 15:10:56 · 762 阅读 · 0 评论 -
Java基础练习——打印一个圆
以下所有代码均托管在GitHub上面(点击这里直达)实现效果:接收输入的半径,打印出一个圆代码如下: private void printCircle(){ //接收用户输入的半径 Scanner scan = new Scanner(System.in); System.out.print("请输入圆的半径R(大于3的整数):");...原创 2015-01-13 15:39:10 · 3359 阅读 · 0 评论 -
Java基础练习——打印正反三角形
以下代码均托管在GitHub上面(点击这里直达)实现效果:键盘输入一个1~100的奇数行数,程序打印对应行数的正反三角形。代码如下:private void printTriangle(){ Scanner scan = new Scanner(System.in); System.out.println("请输入行数(单数):"); ...原创 2015-01-13 14:04:19 · 5010 阅读 · 0 评论 -
Java基础——35 个 Java 代码性能优化总结
原文地址:http://geek.csdn.net/news/detail/111828 前言代码优化,一个很重要的课题。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于代码的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。代码优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可...转载 2017-01-19 15:03:16 · 405 阅读 · 0 评论 -
Java基础——重载和重写
重载:在一个类里面,有两个或以上的同名方法,它们的参数列表不同,此为重载。 //重载的例子void funcA(int a){}void funcB(int a, int b){} 重写:子类继承父类,子类有一个与父类相同参数签名的方法,并且需要重新定义此方法,此为重写。 //重写的例子Class Father{ void ...原创 2017-03-22 15:50:12 · 2618 阅读 · 0 评论 -
Java基础——try finally执行顺序
首先要确定的一点是,不管有没有出现异常,finally块中代码都会执行1.try有return语句,finally没有return语句,返回的是在执行finally语句之前,try里面就确定好的值有如下代码package test;public class TryFinallyTest { public static void main(String[] args) { ...原创 2017-09-29 00:03:53 · 696 阅读 · 0 评论 -
java基础(二)——继承
1.什么是继承继承是使用已存在的类的定义作为基础,从而建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类2.怎样实现继承在java语言中,用extends(扩展)关键字来表示一个类继承了另一个类。在父类中只定义一些通用的属性和方法。子类自动继承父类的属性和方法,子类中可以定义特定的属性和方法。或子类重新定义父类的属性、重转载 2017-10-02 00:51:21 · 365 阅读 · 0 评论 -
Java基础——win 10系统配置JDK1.8环境变量
1、下载JDK1.8(看你电脑系统是多少位,就下对应的版本)2、安装JDK3、配置环境变量变量名:JAVA_HOME 变量值:D:\java\jdk\jdk1.8 // 要根据自己的实际JDK安装目录配置 变量名:Path 变量值1:%JAVA_HOME%\bin 变量值2:%JAVA_HOME%\jre\bin4、检查java环境win+r,c...原创 2018-12-01 11:00:16 · 1119 阅读 · 0 评论