* A:案例演示
* 通过一个案例引入static关键字。
* 人类:Person。每个人都有国籍,中国。* B:画图演示
* 带有static的内存图
lass Demo1_Static {
public static void main(String[] args) {
/*Person p1 = new Person(); //创建对象
p1.name = "苍老师"; //调用姓名属性并赋值
p1.country = "日本"; //调用国籍属性并赋值
...
一、常见的形式 前面初步搭建Django开局时候就 在 项目路径下 建立了statics 文件夹,然后在 settings.py 文件的末尾添加了 statics 文件夹的绝对路径。# 这个可以给模板文件使用,当statics 文件夹路径有变化,或者添加了其他的文件,
#所有的模板使用了 静态文件 就不需要修改引用路径,相当于所有静态文件的别名
STATIC_URL = ‘/static/‘# 这个是真正的静态文件路径,静态文件在几个路径下就添加几个,后续可能增加图片路...
场景:在Static方法中引用被@AutoWired修饰的属性,无法注入,报空指针异常
问题:SpringBoot + Mybatis连接数据库Bean不能注入报空指针异常
在保存到数据库时出现空指针异常
原因:
因为静态无法注入,通常我们会是在Spring框架中使用到@PostConstruct注解 该注解的方法在整个Bean初始化中的执行顺序:
Constructor(构造方法) -> @Autowired(依赖注入) -> @PostConstruct(注释的方法)
解决:
网上咨询了比较多的方法,最终使用上下...
看下面的例子:
package com.andy.juc;public class SynchronizedTest {public static void main(String[] args) {new Thread(new Runnable() {@Overridepublic void run() {sub();}}).start();try {Thread.sleep(1000);} catch (InterruptedException e) {e.printStackTrace();}SynchronizedTest.add();}public static synchronized void add(){System.out.println("hello add");}public static synchronized void sub() {try {...
static abstract(抽象类)
package Java学习.chen.haha.ac.dome4;
//static
public class student {private static int age;//静态的变量private double score;//非静态的变量 非静态方法可以直接调用静态方法 静态不能直接调用非静态方法public void run(){}public static void go(){}public static void main(String[] args) {//run();//错误:(16, 8) java: 无法从静态上下文中引用非静态 方法 run()go();}}package Java...
默认是开启的
存放文件:
在项目目录/app/public下存放.
访问静态资源:
服务器地址/public/文件名
修改配置:
// config.default.jsconfig.static = {// 静态化访问前缀,如:`http://127.0.0.1:7001/static/images/logo.png`prefix: /static, dir: path.join(appInfo.baseDir, app/public), // `String` or `Array:[dir1, dir2, ...]` 静态化目录,可以设置多个静态化目录dynamic: true, // 如果当前访问的静态资源没有缓存,则...
Static凡是加了static都是和类同时创建的(在内存中和类一起加载)静态的变量对于类而言在内存中只有一个,可以被类中的所有实例共享加了static的属性或者方法都可以直接调用,没有加的需要进行实例化之后才可以调用package com.oo.oop.staticKeyword;?public class Student { private static int age; private double score;? public void run(){? }? public static void go() {? }? public static void ...
static 声明的变量和方法都是全局的被static修饰的变量,叫静态变量或类变量;没有被static修饰的变量,叫实例变量。static静态变量一旦生成其内存空间位置不变static 修饰的属性方法该类中所有对象共享 可通过类名直接调用 (被private修饰除外) final 修饰的变量为常量,不能被修改final 声明的方法不能被重写将方法声明为final,那就说明你已经知道这个方法提供的功能已经满足你要求,不需要进行扩展,并且也不允许任何从...
一、 static
多对象共享一段空间,或者说没有对象概念,就是类的概念,不需要实例化,自动被创建。多用于长期共享。不会为对象的创建或销毁而消失。 publicclass C{static A a = new A("C 创建A",1111)public A Ci{get{return a;}}public C(A b){a = b;Console.WriteLine("构造" + a.Presentation);}//public static void Set()//{// a = new A("", 11);//}}publicclass A
{privatestring _presentation;privateint _intva...
成员是对象级别的,访问成员必须用“引用.”,如果用“类名.”访问会报错!如果用空引用访问成员则会发生控空指针异常!静态是类级别的,访问静态必须用类“类名.”,如果用“引用.”也能访问,但是底层仍使用“类名.”,并不会用到对象,如果用空引用访问静态,也不会报错,因为静态访问与对象无关!何时使用静态:一般情况下工具类中的方法大部分都是静态方法!静态方法中无法访问非静态变量。静态变量和成员变量解释静态变量诞生的...
1.是什么?
static表示静态
2.为什么?
1.修饰成员变量,成员方法
类的成员(静态成员)
随着类的加载,进入方法区内存\
3.怎么用?
1.静态成员可通过类名.成员名调用
2.使用static定义静态方法工具类
4.注意点
1.随着类的加载而出现
2.存放在内存的方法区中(只有一份)
3.静态方法只能调用静态成员
4.时间上看:静态成员随着类的加载而加载,非静态成员随着类的实例化而产生
5.开发中,经常使用工具类
修饰符static和abstract
staticstatic可以修饰类中的方法,属性等,被修饰后的方法和属性可以通过类名直接调用也可以通过对象调用。普通的变量只能通过对象进行调用。
静态方法直接可以互相直接调用,非静态方法也可以直接调用静态方法,但是静态方法不能直接调用非静态方法。
eg:
package shiyan;public class Person {public static int age; //静态属性public int score; //非静态public static void go(){ //静态方法Sys...