JAVA初级必须要搞懂的事项(希望对新手有所帮助)
1 安装JDK=> (1,下载JDK,安装,一般目录为C:\Program Files\Java中;2,通过Dos命令测试JDK是否安装=>java –version命令查看安装JDK版本;3.更改环境变量(1,设置变量名:JAVA_HOME.设置变量值为D:jdk6.0;新建PATH,设置变量值为%JAVA_HOME%bin; class_path,变量值为.;C:\Program Files\Java\jdk1.6.0_43\lib\dt.jar;);4,通过javac命令显示出来;)
2 Java基本语法=> 1,标识符。(不能死关键字;可以包含字母,数字,下划线_或$;第一个必须是字母,_或$;区分大下写,不规定字母长度);驼峰命名法:前字母大写,不能以数字开头;帕斯卡命名法:前字母小写,后单词大写;数据类型(基本类型:整型(byte,short,int,long) ; 浮点型(float,double);字符型:(char);布尔型:(bolean:用于JDK决定(true,false));引用类型:(类:(class);接口(lnterface);数组);变量:用来存储数据。(给变量起名,指出变量中存储的数据的类型。);
3 程序流程控制=>布尔运算符(&&且;||或;|或(一个一个比较);!非;异或^);选择运算符:if;if/else;switch(case,default); 循环语句:while;for(;;);do/while; 跳转语句:break:可以用于任何循环控制结构,从而使循环立即终止。 Continue: 终止一次循环;
4 类,对象和包=> 类中有属性(public class Employee{public String name;}); 实例化对象,new 在运算符中创建对象并返回;向类中添加成员变量,添加方法; 访问对象的属性和方法:Employee e=new Employee(); e.name=”张三”; this引用:当前=被引用的;
对象的行为 => 方法调用栈; 方法签名:public static void main(String args []) 访问修饰符(public private,protected或默认访问修饰符);可选修饰符(static;final; abstract;native); 返回值(类型); 形式参数列表;public float divide (int x,float f); 形式参数和实际参数 (形式参数列表用于声明传递到方法中的数据的类型。传递给形式参数的数据成为实际参数); 5.5 按值调用 当实际参数传递给形式参数时,实际参数的数据被复制给形式参数。在编程中,在方法调用之间复制数据的过程; 5.6 方法重载(优点:便于开发简化操作,避免繁琐)当一个类有两到多个同名但是有不同参数列表的方法时,就是方法重载; 构造器 :(在创建对象上被对象初始化。)1,构造方法的名称必须要跟类名一致;2,构造器无返回值(返回值类型);3,默认情况下,类中有一个无参数构造方法(如:public students(){});4, 当写出带参构造器时,系统不会再没有无参构造器;5, 构造器调用构造器用this;
6 数组 => 6.1
数组概括:int [] sums( int [] sums= new int[5]{1,2,3,4,5}; ); 6.3 数组长度:数组名.length ; 6.6 数组复制 (System.arraycopy( 新数组,0(从0开始复制), 被复制的数组,4,新数组.length));
7 继承 => public class 子 extends extends 父{}; 使用“is a”关系判断继承( “is a” 是一个简单而强大的规则,用于判断父类和子类的继承关系是否正确,当使用继承时,必须 能够说子类“is a(是一个)” 父类); 7.5 单继承和多继承(继承的单根性,传递性):JAVA类只能有一个父类; 7.6 所有类的根类Object(超类) (JAVA语言API中包含了一个名为Object的特殊类, 它是整个java类的层次中的根类。);Object类在java.lang 包中,是每个java类的父类,要命是直接的父类,要么就是间接父类。 7.7 方法重写 (1.子类的方法的返回值的类型,方法名和形式参数列表,必训和父类中的是相同的。 2,访问修饰符必训不小于父类中的访问修饰符。 3, 子类中重写的异常不能抛出比父类更多的异常。) 7.7.1 equals()(判断两个字符串是否相同); 7.8 super关键字(super(属性,);必须是第一条语句)super.方法或属性 ; 7.9 final关键字(使用final不能被继承;final方法不能被重写(无子类));
类的高级概念=> 8.1 访问修饰符(公开访问级别:使用public关键字修饰的成员对外公开,即公开成员可以被任何其他的对象访问)。 受保护访问级别:(使用protected关键字修饰,可以被同一个包中的类所访问,还可以被类的子类所访问,不管子类是在哪个包当中)。 默认访问级别 :(没有访问修饰符。可以被同一个包中的类所访问); 私有访问级别:(使用private关键字修饰符,它是四种访问修饰符中级别最低,私有成员只有类本身可以访问,不对外公开); 8.2 封装(封装是使类中的成员变量都是private,并提供public方法访问这些成员变量的技术。) 使用 getter(读) setter(写); 8.3 理解静态成员(关键字static);静态方法不能访问实例成员; 8.4 静态非静态在构造方法之前运行(运行顺序:静态=>父类=> 非静态=>子类); 8.6 内部类( 1.静态内部类 2,成员内部类 3,局部内部类 4,匿名内部类);
9 多态和抽象=> 9.1多态 (静态多态(如方法重载):程序在编译时,系统就能决定调用哪个方法;动态多态: 在运行中系统才能动态确定方法所指的对象,所以也成为编译时多态); 9.1.1 多态的技术基础 (1,向上转型技术; 2,instanceof关键字用于判断运行时的对象的真正类型;3,动态绑定技术);【1,编写父类编写子类;2,子类中重写父类方法;3,用父类数据类型引出子类对象之后,自动寻找-】多态就是同一个方法名的多种不同实现; 9.2 抽象abstract(抽象)abstract class A{ public abstract void F();}
接口=> Java接口的特征归纳:
1, Java接口中的成员变量默认都是public,static,final类型的(都可省略),必须被显示初始化,即接口中的成员变量为常量(大写,单词之间用"_"分隔)
2, Java接口中的方法默认都是public,abstract类型的(都可省略),没有方法体,不能被实例化
接口关键字:父类:public interface A{}子类: Java接口必须通过类来实现它的抽象方法
public class A implements B{...}
JAVA初级必须要搞懂的事项(希望对新手有所帮助)的更多相关文章
- 每个java初学者都应该搞懂的问题
对于这个系列里的问题,每个学JAVA的人都应该搞懂.当然,如果只是学JAVA玩玩就无所谓了.如果你认为自己已经超越初学者了,却不很懂这些问题,请将你自己重归初学者行列.内容均来自于CSDN的经典老贴. ...
- 五分钟学Java:一篇文章搞懂spring和springMVC
原创声明 本文作者:黄小斜 转载请务必在文章开头注明出处和作者. 本文思维导图 什么是Spring,为什么你要学习spring? 你第一次接触spring框架是在什么时候?相信很多人和我一样,第一次了 ...
- Java Builder 模式,你搞懂了么?
加油.png 前言:最近闲来无事的时候想着看看一些平常用的三方库源码,没想到看了之后才知道直接撸源码好伤身体,一般设计优秀的开源库都会涉及很多的设计模式,就比如 android 开发使用频繁的 okH ...
- Java基础-一文搞懂位运算
在日常的Java开发中,位运算使用的不多,使用的更多的是算数运算(+.-.*./.%).关系运算(<.>.<=.>=.==.!=)和逻辑运算(&&.||.!), ...
- 线程池 | Java多线程,彻底搞懂线程池
熟悉Java多线程编程的同学都知道,当我们线程创建过多时,容易引发内存溢出,因此我们就有必要使用线程池的技术了. 最近看了一些相关文章,并亲自研究了一下源码,发现有些文章还是有些问题的,所以我也总结了 ...
- Java 基础 一文搞懂泛型
本文将从以下四个方面来系统的讲解一下泛型,基本上涵盖了泛型的主体内容. 什么是泛型? 为什么要使用泛型? 如何使用泛型? 泛型的特性 1. 什么是泛型? 泛型的英文是Generics,是指在定义方法. ...
- Java并发之彻底搞懂偏向锁升级为轻量级锁
网上有许多讲偏向锁,轻量级锁的文章,但对偏向锁如何升级讲的不够明白,有些文章还相互矛盾,经过对jvm源码(biasedLocking.cpp)的仔细分析和追踪,基本升级过程有了一个清晰的过程,现将升级 ...
- java线程间通信:一个小Demo完全搞懂
版权声明:本文出自汪磊的博客,转载请务必注明出处. Java线程系列文章只是自己知识的总结梳理,都是最基础的玩意,已经掌握熟练的可以绕过. 一.从一个小Demo说起 上篇我们聊到了Java多线程的同步 ...
- c#代码 天气接口 一分钟搞懂你的博客为什么没人看 看完python这段爬虫代码,java流泪了c#沉默了 图片二进制转换与存入数据库相关 C#7.0--引用返回值和引用局部变量 JS直接调用C#后台方法(ajax调用) Linq To Json SqlServer 递归查询
天气预报的程序.程序并不难. 看到这个需求第一个想法就是只要找到合适天气预报接口一切都是小意思,说干就干,立马跟学生沟通价格. 不过谈报价的过程中,差点没让我一口老血喷键盘上,话说我们程序猿的人 ...
随机推荐
- _beginThreadex的用法
http://blog.csdn.net/cjcy1984001/article/details/6675669 线程开始和停止函数! unsigned long _beginthreadex( v ...
- TypeScript完全解读(26课时)_19.其他重要更新
ts3.3升级过来有很多重要的更新 没法归类的更新,在本节课几种讲一下 创建update.ts,然后在index.ts内引入 async和promise es6中增加了promise的支持,能够很好处 ...
- Flutter实战视频-移动电商-48.详细页_详情和评论的切换
48.详细页_详情和评论的切换 增加切换的效果,我们主要是修改这个地方 这样我们的评论的内容就显示出来了 最终代码 details_web.dart import 'package:flutter/m ...
- ubuntu上安装与卸载deb文件(转载)
转自:http://blog.csdn.net/nkguohao/article/details/8951082 版权声明:本文为博主原创文章,未经博主允许不得转载. 通过deb包安装软件: sudo ...
- 一个例子读懂 JS 异步编程: Callback / Promise / Generator / Async
JS异步编程实践理解 回顾JS异步编程方法的发展,主要有以下几种方式: Callback Promise Generator Async 需求 显示购物车商品列表的页面,用户可以勾选想要删除商品(单选 ...
- Sping中使用Junit进行测试
分析: 1.应用程序的入口 main方法2.junit单元测试中,没有main方法也能执行 junit集成了一个main方法 该方法就会判断当前测试类中哪些方法有 @Test注解 junit就让有Te ...
- [Xcode 实际操作]二、视图与手势-(8)UIView视图的纹理填充
目录:[Swift]Xcode实际操作 本文将演示将导入的图片作为纹理,平铺整个屏幕. 往项目中导入一张图片. 点击底部左下角的图标->[Import]->选择需要导入的图片->[O ...
- Tcl/Tk语言学习------拆分字符串
字符串的拆分 前言 字符串的处理是每种语言经常会遇到的问题,tcl作为一门脚本语言自然也不例外,关于字符串的拆分,一般会有两种情况:1.使用单个字符拆分,2.使用字符串拆分. 1.使用单个字符拆分字符 ...
- python 基础(六) 推导式
列表推导式 概念:提供了一种创建列表的简单快速的途径 (1) 一般形式 myList = [x for x in range(10)] #分解后 myList = [] for x in rang ...
- NOIP前计划
距离NOIp还有13天 距离继续学/退役还有13天 是时候列一波计划了 1. 要学的东西 cdq分治(突然发现cdq分治不太行,而且说不定可以用来代替想不出来的数据结构题) 主席树(写的太少啦,不熟练 ...