Python基础语法
print("hello world!") :打印默认会换行逗号添加 end='' 解除
定义变量:python 定义变量不需要关键字只需要定义变量名和赋值。python 中用 # 作为注释
print("hello world!\n" * 3) :python 中字符串可以做乘法
input("请输入:") :接受键盘的输入,返回输入的字符串
类型转换:int(表达式) 、 str(表达式) 、 float(表达式) ,bool 值True==1 、 False==0
基本数据类型:str 、 int 、 float 、 bool
类型判断: type(表达式) 返回其类型的字符串, isinstance(表达式, 数据类型) 判断参 1 的值是否是参 2 的数据类型
运算符:** 乘方,// 除法(向下取整), 非 not 或 or 且and
if:
12345678#!/usr/bin/python3if 条件: 语句elif 条件: 语句else: ...
JAVA 基础进阶巩固类(class):
类:是描述相同事物的共同特征的抽象。
对象:是基于类具体创造的实例。
类名建议使用驼峰写法,一个 java 代码文件中可以定义多个类。但只有 java 文件名的同名类才能被 public 修饰。
类中有且只有五大成分:成员变量,成员方法,构造器,代码块,内部类。
类名 变量=new 构造器 类有一个默认的构造器,当定义了其它构造器时此默认构造器将不存在。
面向对象:
面像对象的三大特征:封装,继承,多态。
封装的作用:提高代码安全性,实现代码组件化。
子类实际上继承了父类的私有成员,只是不能直接访问。
子类实际上并未继承父类的静态成员,只是与父类共享。
方法重写:
子类重写父类方法时,必须保证名称,参数列表与父类重写方法一致。
子类重写方法的返回值类型范围只能等于或小于父类声明的返回值。
子类重写方法的修饰符只能等于或大于父类声明的修饰符。
子类重写方法抛出的异常只能等于或小于父类抛出的异常。
重写方法应加上 @Override 注解。
this 与 super :
this(参数列表) 调用本类构造器。
super(参数列表) 调用父类 ...
多线程知识储备:
java 中线程类主要依靠 Runnable 接口和 Thread 类。线程的启动主要依靠 Thread 的 start方法。
线程中发生异常,只会停止异常线程。一般不会影响其它线程。
线程存在编号从 0 开始。一个线程多次启动会报错,线程执行结束后也不能重启动。
main 方法是主线程,也是一条线程不能忽视
线程的创建与基础使用:创建线程一般有两种方式:
继承 Thread 类,重写 run 方法,调用 start 启动线程。
实现 Runnable 接口,实现 run 方法。将实现类作为参数传给 Thread 构造方法,利用 start 启动线程。
12345678910111213141516171819202122232425/* 1利用类继承Thread类 */class ThreadTest extends Thread{ /* 重写run方法,run方法中写入线程需要执行的代码 */ @Override public void run() { System.out.println("ex ...
jQuery 常用总结入口函数:我们先看一下原生 js 的入口函数:
1234// 原生js写法window.onload = () => { console.log("onload");};
jq 的入口函数后 4 种:
123456789101112131415jQuery(document).ready(function () { console.log("jQuery_ready");});jQuery(function () { console.log("jQuery");});// 在某元素加载完成后执行,这里表示在document加载完毕后$(document).ready(function () { console.log("$_ready");});//常用推荐$(function () { console.log("$");});
...
Map 集合Map 已实现类与特性:
Hashtable:哈希表结构,且不允许 null 作为键和值,同步(不建议使用),键唯一性靠 hashCode()和 equals()(在键对象的类中重写方法,可保证键唯一性)
Properties(Hashtable 子类):属性集,**键与值都是字符串**(没有泛型),都以 object 存储在其中(自身提供了不用强转的方法),且可以结合 流 进行键值操作
HashMap: :哈希表结构,且允许null 作为键和值,不同步
LinkedHashMap:HashMap 的子类,元素顺序为存入顺序(有序)
TreeMap:二叉树结构,会对元素根据键排序(排序方法参照 TreeSet),不同步
Map 常用方法:1234567891011121314Map map = new HashMap();map.clear();//清空元素map.size();//获取元素个数map.containsKey("obj");//是否包含某键map.containsValue("obj");//是否包含某值ma ...
Set 集合
Set 接口 (无序,元素不能重复),继承了 Collection 接口无特有方法。
Set 已实现类与特性:
HashSet:哈希表结构,保证元素唯一性依靠 hashCode() 和 equals() 方法(hash 值相同时再判断 equals,相同将不再存储),不同步
TreeSet:是链表结构(指针),需保证元素唯一性,可排序
LinkedHashSet:HashSet 的子类,按存入顺序使用
Set 利用 Iterator 动态移除元素:与 list 类似直接在 foreach 或循环中动态 add 或 remove 会出错。
12345678910111213Set set=new HashSet();set.add("set0");set.add("set1");set.add("set2");Iterator iterator=set.iterator();while (iterator.hasNext()){ String str = (String) iterator.ne ...
Android
未读Toast:
普通 Toast
1Toast.makeText(getApplicationContext(), "Toast", Toast.LENGTH_SHORT).show();
自定义定义显示位置
1234Toast toast=Toast.makeText(this, "居中Toast", Toast.LENGTH_SHORT);//参1显示位置,参2,3分别是xy轴的偏移量toast.setGravity(Gravity.CENTER,0,0);toast.show();
自定义样式(布局文件根布局设置大小不管用)布局文件:
1234567891011121314151617181920212223242526<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" a ...
深入 JDBC 了解类的反射机制JDBC 基本使用:
在此我们会使用官方的思维来注册驱动,在后面我们可以利用, 类的反射 来实现更简单的驱动注册。
JDBC 一次简单的调用大致分为 5 步:
加载驱动:
12Driver driver=new com.mysql.cj.jdbc.Driver();DriverManager.registerDriver(driver);
Driver: 驱动类,由 java 提供的接口。而它后面的 Driver 对象是由 SQL 厂商提供的实现类。由于它们的类名相同所有我们不能,再导入厂商的类包,只能用完整包名。DriverManager:驱动管理类,来加载驱动。
2.获取连接:
12345//获取连接String url="jdbc:mysql://127.0.0.1:3306/stu?serverTimezone=GMT%2B8";String user="root";String pass="991314";connection=DriverManager.getConnecti ...
Axios 简单入门
ajax 与 axios
下面是一段 javascript 原生 ajax 发送一个简单的请求:
1234567let ajax=new XMLHttpRequest(); ajax.open('get','1.txt',true); ajax.send(); ajax.onreadystatechange=()=>{ let con=ajax.responseText; alert(con); }
axios 的简单使用:
123456axios({ url:'1.txt', method:'get'}).then(res=>{ console.log(res.data);});
可以看出 axios 对 ajax 进行了封装,比原生 ajax 使用更加简洁方便。注意 axios 需要在服务端使用,不合适本地请求。axios 中需要传入一个 ...
Java
未读Filter 过滤器:
对在客户端和服务器之间的中间层 接口,可对客户请求消息和服务器响应消息做拦截处理。并且 一个 servlet 文件可以添加多个过滤器,一个过滤器也可过滤多个 servlet 文件 都在 xml 文件中配置。
1234567public interface Filter { default void init(FilterConfig filterConfig) throws ServletException {} //关键方法 void doFilter(ServletRequest var1, ServletResponse var2, FilterChain var3) throws IOException, ServletException; default void destroy() {}}
源码中可以看出它与 servlet 类似,都有 init 初始化和 destroy 销毁的方法。但这两方法与 servlet 不同的是,它们前面加入了 default 关键字( ...