
java
穿狼皮的小红帽
这个作者很懒,什么都没留下…
展开
-
Java求前一天和后一天、相差天数
1. 日期(年、月、日)2.+1天 -1天3.返回当前日期的字符串package mjh.week.day6;//约束要求//1.year只能从1000-3000//2.month只能从1-12//3.day每个月都不同public class Date<month> { private int year; private int month; private int day; public Date(int year, ...原创 2021-12-28 21:18:41 · 540 阅读 · 0 评论 -
类与对象----方法和行为
行为:也是面向对象中非常关注的一个焦点,在java中以实例方法的形式体现。方法: 1.静态方法(类方法) 加static修饰 不能访问属性,不可以使用this 2.普通方法(实例方法) 不加static修饰 能访问属性,可以使用this调用: 实例方法的调用,必须依赖于一个对象(通过引用)的存在。...原创 2021-12-28 20:02:11 · 670 阅读 · 0 评论 -
java中this的两个作用
什么是this引用:java编译器给每个“成员方法“增加了一个隐藏的引用类型参数,该引用参数指向当前对象(成员方法运行 时调用该成员方法的对象),在成员方法中所有成员变量的操作,都是通过该引用去访问。只不过所有的 操作对用户是透明的,即用户不需要来传递,编译器自动完成。this一共有两个作用:第一个作用:this就是一个引用,类型就是当前类。class Person(){ this 类型就是Person}class Cat(){this 类型就是Cat}指向当前对象,构造器中thi.原创 2021-12-28 12:01:21 · 3644 阅读 · 0 评论 -
面向对象与面向过程(清晰明了的讲述)
面向过程传统洗衣服:传统洗衣服,注重的是洗衣服的过程,少了其中一个环节都不行。其中不同的衣服,洗的时间,拧干的时间都不同,处理起来难度也不一样。将来处理鞋子的时候,中间的环节也都不一样。这里的话,类比成我们写的代码,扩展或维护起来就特别的困难。面向对象现在洗衣服:这个过程中就有人、衣服、洗衣粉、洗衣机这四个对象。人将衣服放入洗衣机中,把洗衣粉倒入洗衣机中。启动洗衣机,洗衣机把衣服洗干净,并且甩干。整个洗衣服的过程都是人、衣服、洗衣粉、洗衣机这四个对象之间进行交互.原创 2021-12-28 09:08:49 · 312 阅读 · 0 评论 -
类(class)和对象(object)
概念层:电脑、人、自行车、学生逻辑层:学生(学号、姓名、性别、班级...) 相当于档案物理层:储存在内存中是怎么回事?对象就是把一些相关的属性进行绑定。类的作用之一:构造对象的模板。Student:姓名 小A 小B身高 173 165模板(类) 对象 对象类的定义 ...原创 2021-12-05 21:35:39 · 524 阅读 · 0 评论 -
java的多维数组
int[][] a = {{1, 2, 3, 4}, {2, 3, 4, 5}, {3, 4, 5, 6} };int[][] a的数组的类型是int[];int[] a的数组的类型是int;int[][] a;a=new int[3][2];a就是一个引用变量,创建的是一个三行两列的int类型的二维数组。同时需要说明的是多维数组的索引都是从0开始的。可使用a[row][col]访问a数组中的每一个元素。..原创 2021-12-04 23:29:49 · 585 阅读 · 0 评论 -
java汉诺塔游戏
汉诺塔游戏:把n个盘子从1号柱移动到3号柱1.把n-1个盘子从1号柱移动到2号柱(递归)2.把最后一个盘子移动到3号柱3.把n-1个柱从2号柱移动到3号柱(递归)原创 2021-12-04 22:57:38 · 246 阅读 · 0 评论 -
Java冒泡排序与sort方法排序
冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端(升序或降序排列),就如同碳酸饮料中二氧化碳的气泡最终会上浮到顶端一样,故名“冒泡排序”。package mjh.week.day3;import java..原创 2021-12-04 16:08:23 · 442 阅读 · 0 评论 -
java引用与对象
引用(reference)相当于是遥控器 对象(object)相当于是空调引用可以指向对象,但是对象不能指向引用。使用数组的过程中常见的两个异常: 1.数组下标越界异常。 2.空指针异常import java.util.Arrays;public class Test1 { public static void main(String[] args) { ...原创 2021-12-03 21:57:34 · 198 阅读 · 0 评论 -
Java中数组的应用场景
1.保存数据public static void main(String[] args) { int[] array1 = new int[]{1, 2, 3}; for (int i = 0; i < array1.length; i++) { System.out.println(array1[i] + ""); } }1 2 32.作为函数的参数 1...原创 2021-12-03 18:51:20 · 830 阅读 · 0 评论 -
认识java中的null
null在Java中是表示的是"空引用",也就是一个不指向对象的引用。null的作用类似于C语言中的空指针(NULL),都表示一个无效的内存空间。因此不能对这个内存进行任何的读写操作。注意:Java 中并没有约定 null 和 0 号地址的内存有任何关联. ...原创 2021-12-03 18:15:52 · 1256 阅读 · 0 评论 -
基本数据类型与引用数据类型的区别
基本数据类型创建的变量,一般称为"基本变量",该变量空间中直接存放的是其所对应的值。引用数据类型创建的变量,一般称为"对象的引用",该变量空间中储存的是对象所在空间的地址。public static void main(String[] args) { int a=10; int b=20; int[] c=new int[]{1,2,3}; }a,b,c都是函数内部的变量,因此其空间都在main方法对应的栈帧中分配。a、b是内置类型原创 2021-12-03 18:12:30 · 120 阅读 · 0 评论 -
java中的数组(应用与对象)
数组(Array):一组具有相同类型的元素的集合。int[] a 定义一个a,类型是存放int类型元素的数组,大小暂时不确定。long[] a char[] a String[] a Scanner[] a Random[] a...原创 2021-12-03 09:34:53 · 976 阅读 · 0 评论 -
java静态变量与类的加载
静态变量、类变量、静态属性:除局部变量之外的另一种变量种类。定义位置:类里,方法外+stataic进行修饰。1.作用域:跟着大括号(整个类的内部是有效的)2.生命周期:伴随着类在运行中的生命周期而运行的静态属性的初始化问题类的生命周期:.java文件 经过编译 .class文件 硬盘类的加载:计算机的体系结构决定了CPU要处理的数据必须要在内存中。意味着,把类的数据从硬盘上(以类文件作为代表)加载到内存中来。类的卸载:把放在内存中的类数据从内...原创 2021-12-02 22:14:29 · 1366 阅读 · 0 评论 -
java方法的重载
在自然语言中,经常会出现“一词多义”的现象,比如:“好人”。 在java中,如果几种方法的名字相同,但是参数列表不同,则称这几种方法重载了。package mjh.week.day2;public class Test2 { public static int add(int x, int y) { return x + y; } public static double add(double x, double y) { ret.原创 2021-12-02 20:34:39 · 218 阅读 · 0 评论 -
java递归和斐波拉契数列
感觉这种图与递归的概念特别的贴切。一个方法在执行过程中调用自身, 就称为 "递归". 递归相当于数学上的 "数学归纳法", 有一个起始条件, 然后有一个递推公式. package mjh.week.day2;//求阶乘public class Test1 { public static int factor(int n) { if (n == 1) { return 1; } return n ...原创 2021-12-02 20:16:15 · 128 阅读 · 0 评论 -
java中包的知识点、局部变量的生命周期、形参与实参
类是以一个个文件的形式存在的。包是以文件夹的形式存在。包是用来放类的组织单位,包(文件夹)中含有很多的类(文件)命名规范大总结:类名、包名、方法名、变量名称1.不能以数字开头2.不能出现特殊符号(字母、数字、下划线、$)3.类名通常HelloWorld方法名和变量名 hellloWorld包名 hello_world...原创 2021-12-01 23:05:26 · 439 阅读 · 0 评论 -
java的方法的定义与使用(应用)
方法(method)方法定义在类(class)里,但不能定义在其他方法中。方法只定义,没有被调用,里面的语句永远不会被执行,但是main方法是一个例外。方法的定义的格式:public static 返回值类型(void代表没有返回值) 方法名称(形参列表){语句...}备注:1.没有返回值类型,用void表示 2.形参就是特殊的局部变量方法的调用:能出现语句的位置,就可以进行方法的调用。add(1,3) int r=add(2,5)...原创 2021-12-01 19:30:36 · 576 阅读 · 0 评论 -
java中printfln、printf、print的区别
输入输出1.输出到控制台printSystem.out.println(msg); // 输出一个字符串, 带换行,括号中只能跟一个参数System.out.print(msg); // 输出一个字符串, 不带换行,System.out.printf(format, msg); // 格式化输出,有多个参数,参数的个数是不确定的System.out.printf("%d %s %f\n",1+1,"您好",1.3);println 输出的内容自带 \n, print 不带 \n原创 2021-11-30 21:30:29 · 1563 阅读 · 0 评论 -
java打印 X XXX XXXXX
public class Test3 { int i = 0; int n = 3; while (i < n) { //打印空格 n-i-1个 for (int j = 0; j < n - i - 1; j++) { System.out.print(" "); } //打印X i*2+1个 .原创 2021-11-30 21:13:56 · 90632 阅读 · 0 评论 -
java打印 X XX XXX XXXX
public class Test3 { int i = 0; int n = 5; while (i < n) { //打印空格 n-i-1个 for (int j = 0; j < n - i - 1; j++) { System.out.print(" "); } //打印X i+1个 .原创 2021-11-30 21:07:25 · 52423 阅读 · 0 评论 -
java猜数字游戏
import java.util.Random;import java.util.Scanner;public class Test2 { public static void main(String[] args) { //Random random = new Random(); // 默认随机种子是系统时间 //int toGuess = random.nextInt(100); //游戏规则: //系统自动生成一个随机整.原创 2021-11-30 21:32:15 · 2565 阅读 · 0 评论 -
java逻辑控制和输入输出
好代码的标准:1.代码容易理解 2.运行效率更高1.循序结构按顺序的方式执行的,也就是说,按照指定的顺序,一条指令一条指令的执行,执行完一条指定之后,再执行下一条指令。当然现在很多CPU都是多核心、多线程的,并发执行多条指令,但对于同一个程序而言,CPU还是通过顺序的方式来执行指令的。2.分支结构1.if语句if(布尔表达式){ // 语句 }if(布尔表达式){ // 语句1 } else {// 语句2 }if(布尔表达式1){ // 语句...原创 2021-11-30 20:12:33 · 219 阅读 · 0 评论 -
变量和运算符
变量是指程序运行时可变的量,相当于开辟了一块内存空间来保存一些数据。java的 double 类型的内存布局遵守IEEE754 标准(和C语言一样), 尝试使用有限的内存空间表示可能无限的小数, 势必会存在一定的精度误差.此时我们在执行 javac 时加上 -encoding UTF-8 选项即可 javac -encoding UTF-8 Test.java int 和 String 之间的相互转换 int 转成 String int num = .原创 2021-11-30 17:01:05 · 655 阅读 · 0 评论 -
数据类型与变量
数据(data) 一般都默认是内存上的数据1.数据类型(data type)2.变量(variable)3.基本数据类型的一定规则(数据转换和类型提升)。基本数据类型一共八种1.整型(byte1、short2、int4、long8) 2.字符型(char2)3.浮点型(float4、double8) 4.布尔数据类型(boolean)true/false负数到正数都有、和32位、64位...原创 2021-11-29 22:00:27 · 260 阅读 · 0 评论 -
Linux
项目分为前端和后端,而后端服务器一般都是linux系统的,作为需要:1.负责搭建及维护测试环境2.负责跟踪及定位bug硬件服务器(价格昂贵) 云服务器(阿里云、亚马逊、腾讯云、华为云)linux的远程连接工具:1.远程连接工具:putty、SSH、XShell2.远程传输文件工具:xftp、filezilla|管道符,用来过滤inode(索引节点)。...原创 2021-11-29 20:50:15 · 1151 阅读 · 0 评论 -
动态内存管理
动态内存管理: 如何释放一个内存? 如何申请一个内存?以前是通过创建变量的方式来申请内存的。全局变量:就跟随程序释放静态变量:也跟随程序释放局部变量:跟随代码块释放1.动态内存管理,能够更灵活的决定申请时机和释放时机。2.动态内存管理可以在运行时决定内存申请的大小。让用户输入一个数字,通过这个数字来决定申请多少内存。(这是一个彻底的运行时行为)malloc 标准库提供的函数 <stdlib...原创 2021-11-29 20:49:54 · 72 阅读 · 0 评论 -
面向对象和面向过程
首先面向过程编程思想的概念:传统的C语言就属于面向过程编译的语言。面向过程编译解决问题的思路就是:通常是分析出解决问题所需要的步骤,然后用方法把这些步骤一步一步的实现,最后一个一个依次调用方法来解决。面向过程编译的过程侧重于整个问题的解决步骤,着眼于局部和具体。面向对象编译思想的概述:从现实世界中存在的事物出发来构造软件系统,并在系统构造中尽可能运用人类的自然思维方式,强调直接以问题域中的事物为中心来思考问题,认识问题,并根据这些事物的本质特点,把它们抽象地表示为系统中的对象,作为系统的基本构成原创 2021-11-29 17:48:06 · 311 阅读 · 0 评论 -
初始化java
.java 源码文件编译(compile).class类文件/字节码(byte code)文件调试(bebug) 断点(breakpoint)IDEA小结:1.工程(project)2.类(class)3.方法(method)/函数(function)4.构建(build)->编译(compile)5.Java源文件、类文件(字节码文件)6.编译器(compiler)-----javac7.Java虚拟机(JVM)运行字节...原创 2021-11-29 20:49:36 · 320 阅读 · 0 评论