Java——总结
一、编写并运行java程序步骤:
1、编写java源代码
java源代码文件都已java作为扩展名
java代码格式:
class 类名{
//主方法}
2、编译,将字符文件编译为字节文件
在dos中打开java文件所在的目录
编译:javac 文件名(包含扩展名) 如果没有提示其他信息,并且在当前文件夹下多出来一个.class作为扩展名的文件,说明编译成功。
3、运行java字节文件
命令: java 文件名(不包含扩展名,因为所有的java字节码文件都是以.class作为结尾的)
4、注释
单行注释: //注释内容
多行注释1、
/*
多行注释:不会编译到class文件中
*/
/**
* 多行注释会被编译到class文件中
*/
5、运算符
语句
常量
变量
数据类型 变量名 = 值;
int score = 89;
二、堆、栈、方法区
堆:实例化对象,数据储存
栈:运行方法
方法区:加载类,分配类成员变量以及静态方法的入口。含有常量池
三、java三大要素:继承、封装、多态
1、继承
(1)每个类只能继承一个类,object默认为所有类的父类
(2)关键字
1.extends:表示继承,用法为<子类>extends<父类>
2.super:
- super关键字可以调用父类的成员变量( super.属性)和方法(super.父类方法([参数列表]))。
- 子类构造方法中可以使用super关键字调用父类的构造方法:super([参数列表]);
- super 不能用于静态方法或静态代码块中。
3.final:
- final关键字可以用来修饰类、方法和变量。
- final修饰的类不能被继承。
- final修饰的方法不能被重写。
- final修饰的变量是常量,不允许二次赋值。
4.this:表示当前类的对象,还可以使用this()表示调用当前类的构造方法
(3)运行顺序:
继承结构在内存中运行步骤:
(具体分析参照Java——继承的运行顺序)
2.封装:指使用公有方法操作类中私有属性以保证数据的安全性
(1)public是最大的访问权限修饰符,其修饰的成员变量、构造方法和普通方法可在任何一个类中被操作或使用;
(2)protected修饰的成员变量、构造方法和普通方法可以在其定义类中、与定义类同包的其它类(可以使子类)中和与定义类不同包但是其子类的类中使用;
(3)默认(友好的)修饰的成员变量、构造方法和普通方法可以在其定义类中和与定义类同包的其它类(可以使子类)中使用;
(4)private是最小的访问权限控制符,其修饰的成员变量、构造方法和普通方法只能在定义它们的类中被操作或使用;public是最大的访问权限修饰符,其修饰的成员变
量、构造方法和普通方法可在任何一个类中被操作或使用;
3.多态
(1)关键字:
1.abstract:
- 由abstract修饰的方法叫抽象方法
- 非抽象类子类必须实现抽象父类的所有抽象方法
- 抽象类不能被实例化
- abstract只关心此方法是否存在,而不关心此方法是否被实现。
2. 接口(interface):
- 接口只能继承父接口,不能继承类class
- 接口回调:接口声明,实现类实例化
- 非抽象子接口必须调用父接口中的所有抽象方法
- 如果一个类实现了一个接口,但没有实现接口中的所有抽象方法,那么这个类必须是抽象类
四、String字符串
常用方法:
length():String的长度
equals(str):比较和str是否相同
endWith(str)、startWith(str): 判断是否以str开头、结尾
compareTo(String str): 和str按字典顺序比较;相同返回0,大则返回正数,小则返回负数。
indexOf(str):检索str第一次出现的位置,如果没有则返回-1.
lastIndexOf(str): 检索str最后一次出现的位置,没有则返回-1.
indexOf(str,start): 检索str从start开始第一次出现的位置,没有则返回-1.
lastIndexOf(str,end): 检索str到end位置最后一次出现的位置,没有则返回-1
substring(start,end): 截取从start到end位置的字符并返回。
replaceAll(old,new): 以new替换old。
trim(str): 去掉起始和结束位置的所有空格并返回余下字符串
split(str): 以str分割当前字符并返回字符串组
五、Comparable接口
Character常用方法
isDigit(char ch) 如果ch是数字字符返回true,否则返回false
isLetter(char ch) 如果ch是字母字符返回true,否则返回false
isLetterOrDigit(char ch) 如果ch是字母字符或数字字符返回true,否则返回false
isLowerCase(char ch) 如果ch是小写字母字符返回true,否则返回false
isUpperCase(char ch) 如果ch是大写字母字符返回true,否则返回false
toLowerCase(char ch) 返回ch的小写形式
toUpperCase(char ch) 返回ch的大写形式
isSpaceChar(char ch) 如果ch是空格返回true,否则返回false
六、封装类
1.基本数据类型的封装类:
int————–>Integer
byte————>Byte
short———–>Short
long———–>Long
boolean——->Boolean
char———–>Character
double——–>Double
float———–>Float
2.字符串转化为封装类:
Byte.parseByte(<目标字符串>);
Short.parseShort(<目标字符串>);
Integer.parseInt(<目标字符串>);
Long.parseLong(<目标字符串>);
Float.parseFloat(<目标字符串>);
Double.parseDouble(<目标字符串>);
Boolean.parseBoolean(<目标字符串>);
Java——总结的更多相关文章
- Spark案例分析
一.需求:计算网页访问量前三名 import org.apache.spark.rdd.RDD import org.apache.spark.{SparkConf, SparkContext} /* ...
- 故障重现(内存篇2),JAVA内存不足导致频繁回收和swap引起的性能问题
背景起因: 记起以前的另一次也是关于内存的调优分享下 有个系统平时运行非常稳定运行(没经历过大并发考验),然而在一次活动后,人数并发一上来后,系统开始卡. 我按经验开始调优,在每个关键步骤的加入如 ...
- Elasticsearch之java的基本操作一
摘要 接触ElasticSearch已经有一段了.在这期间,遇到很多问题,但在最后自己的不断探索下解决了这些问题.看到网上或多或少的都有一些介绍ElasticSearch相关知识的文档,但个人觉得 ...
- 论:开发者信仰之“天下IT是一家“(Java .NET篇)
比尔盖茨公认的IT界领军人物,打造了辉煌一时的PC时代. 2008年,史蒂夫鲍尔默接替了盖茨的工作,成为微软公司的总裁. 2013年他与微软做了最后的道别. 2013年以后,我才真正看到了微软的变化. ...
- 故障重现, JAVA进程内存不够时突然挂掉模拟
背景,服务器上的一个JAVA服务进程突然挂掉,查看产生了崩溃日志,如下: # Set larger code cache with -XX:ReservedCodeCacheSize= # This ...
- 死磕内存篇 --- JAVA进程和linux内存间的大小关系
运行个JAVA 用sleep去hold住 package org.hjb.test; public class TestOnly { public static void main(String[] ...
- 【小程序分享篇 一 】开发了个JAVA小程序, 用于清除内存卡或者U盘里的垃圾文件非常有用
有一种场景, 手机内存卡空间被用光了,但又不知道哪个文件占用了太大,一个个文件夹去找又太麻烦,所以我开发了个小程序把手机所有文件(包括路径下所有层次子文件夹下的文件)进行一个排序,这样你就可以找出哪个 ...
- Java多线程基础学习(二)
9. 线程安全/共享变量——同步 当多个线程用到同一个变量时,在修改值时存在同时修改的可能性,而此时该变量只能被赋值一次.这就会导致出现“线程安全”问题,这个被多个线程共用的变量称之为“共享变量”. ...
- Java多线程基础学习(一)
1. 创建线程 1.1 通过构造函数:public Thread(Runnable target, String name){} 或:public Thread(Runnable target ...
- c#与java的区别
经常有人问这种问题,用了些时间java之后,发现这俩玩意除了一小部分壳子长的还有能稍微凑合上,基本上没什么相似之处,可以说也就是马甲层面上的相似吧,还是比较短的马甲... 一般C#多用于业务系统的开发 ...
随机推荐
- 基于SVD的图像压缩
算法简介 算法实现 我只是简单处理了一下图像的灰度值,如果要处理RGB值的话,就需要分别进行SVD分解,最后再合起来即可. import numpy as np from PIL import Ima ...
- EF的优缺点
优点: 1.简洁的Linq to Sql语句大大提高了开发人员的效率,不要再写复杂的sql语句: 2.不再需要再管应用程序如何去连接数据库: 3.EF可以用作用于数据服务和OData Service的 ...
- 记一次IIS发布网站导致系统时常跳入登录页面的问题解决
服务器:winserver2012R2 iis 发布网站后,正常浏览网页,时常跳到登录页面,第一反应session过期,因为登录信息都存在session,但session 都是默认配置过期时间为20分 ...
- shell date命令
date命令的语法结构: date [-d][时间运算] [+FORMAT] 先说简单的,[+FORMAT] 部分,主要有如下输出格式: 时间方面: %H : 小时(00..23) %I : 小时(0 ...
- centos7——mysql5.7忘记root密码的处理方式
参考资料:https://www.cnblogs.com/nangch/p/5521193.html 解决方法: 一.通过编辑/etc/my.cnf文件在[mysqld]下面加上skip-grant- ...
- Ubuntu16.04 使用sudo cat EOF 编辑文件,提示Permission denied错误的解决办法
一.执行命令报错 在Ubuntu16.04下,使用如下命令,修改hosts主机文件,居然提示权限错误: catty@node186:~$ sudo cat <<EOF > /etc/ ...
- 合并K个排序链表(java实现)
题目: 合并 k 个排序链表,返回合并后的排序链表.请分析和描述算法的复杂度. 示例: 输入: [ 1->4->5, 1->3->4, 2->6 ] 输出: ...
- VMware虚拟机安装CentOS 6.9图文教程
1.Win7安装VMware虚拟机比较简单,直接从官网下载VMware安装即可,这里不再叙述. 2.接着从CentOS官网直接下载CentOS 6.9的iso镜像文件. 3.打开VMware,点击创建 ...
- jieba库及词频统计
import jieba txt = open("C:\\Users\\Administrator\\Desktop\\流浪地球.txt", "r", enco ...
- 换行符java去除字符串中的空格、回车、换行符、制表符
import java.util.regex.Matcher; import java.util.regex.Pattern; /** * @author lei * 2011-9-2 */ publ ...