Java
aty111111
这个作者很懒,什么都没留下…
展开
-
static关键字,抽象类,接口和内部类
1.static关键字详解1.static 修饰变量(或方法) 表示静态变量(方法),随类一起加载,可直接被类调用无static修饰,表示普通变量(方法),创建对象时被一起创建,不能被类调用package com.oop.demo08;//static 从属于当前类,随类一起加载public class Student { private static int age; //静态的变量 private double score; //非静态的变量 publ原创 2021-07-21 11:34:38 · 114 阅读 · 0 评论 -
面向对象02:Java的继承,封装和多态
1. 封装该露的露,该藏的藏* 我们程序设计要追求***高内聚,低耦合***,高内聚就是类的内部数据操作细节自己完成,不允许外部的干涉;低耦合:仅暴露少量的方法给外部使用封装(数据的隐藏)* 通常,应禁止访问一个对象中数据的实际表示,而应通过操作接口来访问,这称为信息隐藏。记住这句话就够了:属性私有,get/set意义:1. 提高程序的安全性,保护数据2. 隐藏代码的实现细节3. 统一接口4. 系统可维护性增加了注:1. 快捷键:alt + insert : Ge原创 2021-06-10 11:42:40 · 57 阅读 · 0 评论 -
面向对象01:对象的定义,构造与内存分析
1.面向过程&面向对象面向过程思想 * 步骤清晰简单,第一步做什么,第二步做什么 * 面对过程适合处理一些较为简单的问题面向对象思想 * 物以类聚,**分类**的思维模式,思考问题首先会解决问题需要哪些分类,然后对这些分类进行单独思考。最后,才对某个分类下的细节进行面向过程的思索。 * 面向对象适合处理复杂的问题,适合处理需要多人协作的问题对于描述复杂的事务,为了让从宏观上把握,从整体上合理分析,我们需要使用面向对象的思路来分析整个系统。但是,具体到微观操作,仍然需要面原创 2021-06-03 13:03:41 · 130 阅读 · 0 评论 -
Java数组02:数组的使用,多维数组,Arrays类,冒泡排序和稀疏数组
1.数组的使用1.1 普通for循环package com.tianyu.array;public class ArrayDemo03 { public static void main(String[] args) { int[] a = {1,2,3,4,5}; //打印全部的数组元素 for (int i = 0; i < a.length; i++) { System.out.println(a[i]);原创 2021-06-02 00:46:12 · 204 阅读 · 0 评论 -
Java数组01:数组的基本概念以及内存分析
1.数组的定义数组是相同类型数据的有序集合数组描述的是相同类型的若干个数据,按照一定的先后次序组合而成其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们2.数组的声明创建首先必须声明数组变量,才能在程序中使用数组。下面是声明数组变量的语法dataType[] arrayRefVar; //首选的方法或dataType arrayRefVar[]; //效果相同,但不是首选方法Java语言使用new操作符来创建数组,语法如下dataType[]原创 2021-06-01 22:38:23 · 425 阅读 · 0 评论 -
Java方法03:递归讲解
#1.递归* A方法调用B方法,我们很容易理解* 递归就是:A方法调用A方法!就是自己调自己* 利用递归可以用简单的程序来解决一些复杂的问题。它通常把一个大型复杂的问题层层转化为一个与原问题相似的规模较小的问题来求解, 递归策略只需少量的程序就可描述出解题过程所需要的的多次重复计算,大大的减少了程序的代码量。递归的能力在于用有限的语句来定义对象的无限集合* **递归结构包括两个部分:** * **递归头:什么时候不调用自身方法。如果没有头,将陷入死循环。**原创 2021-06-01 00:14:37 · 89 阅读 · 0 评论 -
Java方法详解01:方法的定义与调用
#1.何谓方法?* System.out.println() ,System是系统的类,out是系统下的对象,print()就是一个方法* Java方法是语句的集合,它们在一起执行一个功能 * 方法是解决一类问题的步骤的有序组合 * 方法包含于类或对象中 * 方法在程序中被创建,在其他地方被引用* 设计方法的原则:方法的本意是功能块,就是实现某个功能的语句块的几何。我们设计方法的时候, 最好保持方法的原子性,**就是一个方法只完成一个功原创 2021-06-01 00:12:54 · 149 阅读 · 0 评论 -
Java方法02:方法的重载,命令行的传参,可变参数
#1.方法的重载、* 重载就是在一个类中,有相同的函数名称,但形参不同的函数* 方法的重载的规则: * 方法名称必须相同 * **参数列表必须不同(个数不同、或类型不同、参数排列顺序不同等)** * 方法的返回类型可以相同也可以不相同 * 仅仅返回类型不同不足以成为方法的重载* 实现理论: * 方法名称相同时,编译器会根据调用方法的参数个数,参数类型等去逐个匹配,已选择对应的方法,如果匹配失败,则编译器报错 * 示例package原创 2021-06-01 00:13:29 · 207 阅读 · 0 评论 -
流程控制04 break,continue ,打印三角形
#1.break,continue* break在任何循环语句的主体部分,均可用break控制循环的流程。break用于强行退出循环,不执行循环中剩余的语句。(break语句也在switch语句中使用)* continue语句用在循环语句体中,用于终止某次循环过程,即跳过循环体中尚未执行的语句,接着进行下一次是否执行循环的判定* 关于goto关键字: * goto关键字很早就在程序设计语言中出现,尽管goto仍是Java的一个保留字,但并未在语言中得到正式使用;Java没有goto。然而原创 2021-06-01 00:12:15 · 222 阅读 · 0 评论 -
流程控制03 循环结构 打印九九乘法表
#1.循环结构 * while循环 * do...while循环 * for循环 * 在Java5中引入了一种主要用于数组的增强型for循环##(1)while循环 * while是最基本的循环,它的结构为:while(布尔表达式){//循环内容} * 只要布尔表达式为true,循环就会一直执行下去 * **我们大多数情况是会让循环停止下来的,我们需要一个让表达式失效的方式来结束循环。**package com.tianyu.structure;pub原创 2021-05-31 23:10:41 · 260 阅读 · 0 评论 -
流程控制02:顺序结构、选择结构
#1.顺序结构* JAVA的基本结构就是顺序结构,除非特别指明,否则就按照顺序一句一句执行* 顺序结构是最基本的算法结构* 语句与语句之间,框与框之间是按从上到下的顺序进行的,它是若干个以此执行的处理步骤组成的,它是任何一个算法都离不开的一种基本算法结构。#2.选择结构##if单选择结构 * 我们很多时候需要去判断一个东西是否可行,然后我们采取执行,这样一个过程在程序中用if语句来表示 * 语法if (布尔表达式){ //如果不二表达式为true将执行的原创 2021-05-31 23:09:55 · 80 阅读 · 0 评论 -
流程控制01 用户交互Scanner
#1.Scanner对象之前我们学的基本语法中我们并没有实现程序和人的交互,但是java给我们提供了这样一个工具类,我们可以获取用户的输入。java.util.Scanner是Java5的新特征,我们可以通过Scanner类来获取用户的输入。基本语法Scanner s = new Scanner(System.in);通过Scanner类的next()与nextLine()方法获取输入的字符串,在读取前我们一般需要使用 hasNext()与hasNextLine()判断是否还有输入的数原创 2021-05-31 23:09:12 · 63 阅读 · 0 评论 -
基础语法04:包机制和JavaDoc
#1. 包机制为了更好的组织类,Java提供了包机制,用于区别类名的命名空间包语句的语法格式package pkg1[.pkg2[.pkg3...]];一般利用公司域名倒置作为包名;为了能够使用某一个包的成员,我们需要在Java程序中明确导入该包。使用"import"语句可以完成此功能。import package1[.package2...].(classname|*); //* 通配符,导入包下所有的类#2. JavaDocjavadoc命令是用来生成原创 2021-05-31 23:08:02 · 92 阅读 · 0 评论 -
基础语法03:运算符,初识别Math类
#1.运算符JAVA语言支持如下运算符:算术运算符:+, - , * , / , %(取余,模运算) , ++ , –赋值运算符: =关系运算符: > , < , >= . <= , == ,!=instanceof逻辑运算符:&& , || , !位运算符: & , | , ^ , ~ , >> , << , >>> (了解!!!)条件运算符:? , :扩展赋值运算符: += , -= ,*=原创 2021-05-31 23:06:48 · 89 阅读 · 0 评论 -
基础语法02:变量,常量,作用域
#1.变量变量是什么:就是可以变化的量JAVA是一种强类型语言,每个变量都必须声明其类型JAVA变量是程序中最基本的存储单元,但要素包括其变量名,变量类型和作用域。type varName [=value] [{,varName[=value]}]//数据类型 变量名 = 值;可以使用逗号隔开来声明多个同类型变量*注意事项* 每个变量都有类型,类型可以是基本类型,也可以是引用类型* 变量名必须是合法的标识符* 变量声明是一条完整的语句,因此每一个声明都必须以分号结束原创 2021-05-31 23:05:56 · 74 阅读 · 0 评论 -
基础语法01 注释,数据类型,数据类型扩展,类型转换
1.注释平时我们编写代码,在代码量比较少的时候,我们可以看懂自己写的,但是当项目结构一旦复杂起来,我们就需要用到注释了注释并不会被执行,是给我们写代码的人看的书写注释是一个非常好的习惯JAVA的注释有三种:单行注释多行注释文档注释//有趣的代码注释2.标识符关键字| abstract | assert | boolearn | break | byte || case | catch | char原创 2021-05-31 23:04:19 · 105 阅读 · 0 评论 -
03 helloworld讲解
1.打开dos命令窗口,执行java HelloWorld,执行原理* java.exe命令会启动JVM* JVM启动之后会启动类加载器ClassLoader* ClassLoader会在硬盘上某个位置搜索HelloWorld.class字节码文件* 找到该文件则执行* 找不到该文件则报错疑问:ClassLoader是在哪个位置上搜索HelloWorld.exe字节码文件的? * 默认情况下,ClassLoader从当前路径下加载xxx.class字节码文件 * 当然,原创 2021-05-31 22:57:15 · 191 阅读 · 0 评论 -
02java特性,编译与运行
1.JAVA包括三大块:-JavaSE(java标准版)-JavaEE(java企业版)-JavaME(java微型版)其中JavaSE是基础2.java语言特性:【开源,免费,纯面向对象,跨平台】a.简单性:相对而言的,例如java中不再支持多继承,c++是支持多继承的,多继承比较复杂c++中有指针,java中屏蔽了指针的概念,所以相对来说java是简单的java语言底层是c++实现的b.面向对象:java是纯面向对象的,更符合人的思维模式,更容易理解c.可移植性:什么是可移植性?原创 2021-05-31 22:54:56 · 650 阅读 · 0 评论 -
01MarkDown语法
Typora的常用操作文章目录Typora的常用操作标题段落水平线列表有序列表无序列表菜单目录表格图片代码块引注url链接表情删除线加粗强调(斜体)下划线水平分割线代码标题标题可用“#”表示,总共有6个标题,依次增加#+标题内容,换行即可(双回车退出)“# 空格 一级标题” 换行 相当于h1“## 空格 二级标题” 换行 相当于h2“### 空格 三级标题” 换行 相当于h3“#### 空格 四级标题” 换行 相当于h4“##### 空格 五级标题” 换行 相当于h5“###### 空格原创 2021-05-31 22:39:22 · 106 阅读 · 0 评论 -
Java方法作业:计算器功能的实现
#作业* 写一个计算器,要求实现加减乘除功能,兵器能够循环接收新的数据,通过用户交互实现* 思路推荐: * 写四个方法:加减乘除 * 利用循环+switch进行用户交互 * 传递需要操作的两个数 * 输出结果package com.tianyu.method;import java.util.Scanner;public class Demo07 { public static void main(String[] args) {原创 2021-05-31 22:18:22 · 342 阅读 · 0 评论