'분류 전체보기'에 해당되는 글 508건

반응형
public class test{

static int pi; 	//클래스 변수

int number;		//인스턴스 변수

void method(){
	int lv;		//지역 변수
    }
} 

클래스 변수의 용도

1. 인스턴스에 따라 변하지 않는 값이 필요한 경우.

2. 인스턴스를 생성할 필요가 없는 값을 클래스에 저장하고 싶은 경우

3. 값의 변경 사항을 모든 인스턴스가 공유해야 될 경우.

 

클래스 메소드는 인스턴스 변수에 접근할 수 없다.

인스턴트 메소드는 클래스 변수에 접근할 수 있다.

 

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

1. 오버로딩과 다형성

서로 다른 동작 방법을 가지고 있기 때문에 오버로딩은 다형성의 한 예라고 할 수 있다.

package 다형성;


class a{
	public void a(int param) {
		System.out.println("숫자출력");
		System.out.println(param);
	}
	public void a(String param) {
		System.out.println("문자 출력");
		System.out.println(param);
	}
		
}

public class overloading_polymorphism {
	public static void main(String[] args) {
		a a = new a();
		a.a(3);
		a.a("삼");
	}
}

 

2. 클래스와 다형성

package polymorphism;

class ClassA{
	public String x() {return "ClassA.x";}
}
class ClassB extends ClassA{
	public String x() {return "ClassB.x";}
	public String y() {return "ClassB.y";}
}
public class class_ploymorphism {
public static void main(String[] args) {
	ClassA obj = new ClassB();
	System.out.println(obj.x());
//	System.out.println(obj.y());
}
}
package org.opentutorials.javatutorials.polymorphism;
abstract class Calculator{
    int left, right;
    public void setOprands(int left, int right){
        this.left = left;
        this.right = right;
    } 
    int _sum() {
        return this.left + this.right;
    }
    public abstract void sum();  
    public abstract void avg();
    public void run(){
        sum();
        avg();
    }
}
class CalculatorDecoPlus extends Calculator {
    public void sum(){
        System.out.println("+ sum :"+_sum());
    }
    public void avg(){
        System.out.println("+ avg :"+(this.left+this.right)/2);
    }
} 
class CalculatorDecoMinus extends Calculator {
    public void sum(){
        System.out.println("- sum :"+_sum());
    }
    public void avg(){
        System.out.println("- avg :"+(this.left+this.right)/2);
    }
} 
public class CalculatorDemo {
    public static void execute(Calculator cal){
        System.out.println("실행결과");
        cal.run();
    }
    public static void main(String[] args) { 
        Calculator c1 = new CalculatorDecoPlus();
        c1.setOprands(10, 20);
         
        Calculator c2 = new CalculatorDecoMinus();
        c2.setOprands(10, 20);
         
        execute(c1);
        execute(c2);
    }
}

 

3. 인터페이스와 다형성

package org.opentutorials.javatutorials.polymorphism;
 
interface father{}
interface mother{}
interface programmer{
    public void coding();
}
interface believer{}
class Steve implements father, programmer, believer{
    public void coding(){
        System.out.println("fast");
    }
}
class Rachel implements mother, programmer{
    public void coding(){
        System.out.println("elegance");
    }
}
public class Workspace{
    public static void main(String[] args){
        programmer employee1 = new Steve();
        programmer employee2 = new Rachel();
         
        employee1.coding();
        employee2.coding();
    }
}

 

참조: 생활코딩 다형성

 

반응형
블로그 이미지

꽃꽂이하는개발자

,
반응형

트랜잭션이란? 

  2개 이상의 쿼리를 하나의 커넥션으로 묶어 DB에 전송하고 이 과정에서 어떠한 에러(Exceptioin)가 발생할 경우 자동으로 모든 과정을 원래 상태로 돌려놓는 것입니다. 프로시져도 같은 맥락이긴 하지만 차이점은 로직을 JAVA에서 처리하는게 아니라 DB상에서 처리한다는 것입니다. 과거에 트랜잭션 구현이 어렵고 프로시져 구현이 더 간편했을 때만 하더라도 많은 웹어플리케이션이 비지니스 로직을 JAVA가 아니라 DB에서 처리하는게 유행했던 시절도 있었습니다.

 

간단하게 말하자면!

 

  데이터의 무결성으로 인하여 데이터 작업 시에 문제가 생기면, 데이터 작업을 하기 이전 시점으로 모든 데이터를 원상복구 하는 것을 말합니다. 즉, 모두 실행되거나 모두 실행되지 않거나를 뜻한다.

 

 

반응형
블로그 이미지

꽃꽂이하는개발자

,

@media

2020/CSS 2020. 3. 25. 17:14
반응형

@media 미디어타입 and (미디어 특성){ css코드 }

 

미디어 타입

all :모든 미디어 타입에 적용

screen: 컴퓨터 화면, 타블렛, 스마트폰

print: 인쇄 전용

 

미디어 특성

width 뷰포트 가로 너비

max-width 뷰포트 최대 가로 너비(이하)

min-width 뷰포트 최소 가로 너비(이상)

height 뷰포트 세로 너비

max-height 뷰포트 최대 세로 너비(이하)

min-height 뷰포트 최소 세로 너비(이상)

orientation 뷰포트 방향(portrait, landscape) portrait(세로가 더 긴 상태) landscape(가로가 더 긴 상태)

 

<div class="container"><div>

<style>
.container{
width: 100px;
height: 100px;
background: red;
}

/* 최소 너비가 700px 이상이면 css적용 */
@media screen and (max-width: 700px){
.container{
height: 300px;
background: blue;
	}
}

</style>
반응형

'2020 > CSS' 카테고리의 다른 글

flex  (0) 2020.03.24
css 다단  (0) 2020.03.24
animation-play-state  (0) 2020.03.24
animation-fill-mode  (0) 2020.03.24
animation-iteration-count, animation-direction  (0) 2020.03.24
블로그 이미지

꽃꽂이하는개발자

,

flex

2020/CSS 2020. 3. 24. 21:19
반응형

# 컨테이너자체가 block이 되느냐 아니면 inline형태의 block이 되느냐의 차이

display : inline-flex;

display: flex;

 

#flex-direction

row : items를 수평축으로 표시

row-reverse: items를 row의 반대 축으로 표시

column: items를 수직축으로 표시

column-reverse: items를 column의 반대축으로 표시

ex) flex-direction: row

 

#

flex-start : 시작점

flex-end: 끝점

 

#flex-wrap

nowrap: 모든 items를 여러 줄로 묶지 않고 한줄에 표시

wrap : items를 여러 줄로 묶음

wrap-reverse: items를 wrap의 역방향 묶음

 

#justify-content: 주측의 정렬방법

flext-start;

flex-end;

center;

space-between;

space-around;

 

#align-content: 교차측의 정렬방법

stretch;

flext-start;

flex-end;

center;

space-between;

space-around;

 

#align-items

stretch;

flext-start;

flex-end;

center;

baseline; 아이템을 문자 기준선에 정렬

 

#flex-grow: 증가너비;

ex) flex-grow: 1; 비율에 따라 크기 변경

 

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .container {
        border: 2px solid red;
        display: flex;
      }
      .container .item {
        height: 100px;
        border: 2px solid;
        border-radius: 10px;
      }
      .item1 {
        flex-grow: 1;
      }
      .item2 {
        flex-grow: 2;
      }
      .item3 {
        width: 100px;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="item item1">1</div>
      <div class="item item2">2</div>
      <div class="item item3">3</div>
    </div>
  </body>
</html>

#flex-shrink : item이 감소하는 너비의 비율을 설정합니다.

<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .container {
        border: 2px solid red;
        display: flex;
      }
      .container .item {
        height: 100px;
        border: 2px solid;
        border-radius: 10px;
      }

      .item1 {
        flex-basis: 200px;
        flex-shrink: 1;
      }
      .item2 {
        flex-basis: 200px;
        flex-shrink: 2;
      }
      .item3 {
        width: 100px;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="item item1">1</div>
      <div class="item item2">2</div>
      <div class="item item3">3</div>
    </div>
  </body>
</html>

# flex-basis : item의 공간 배분 전 기본 너비를 설정합니다.

 

반응형

'2020 > CSS' 카테고리의 다른 글

@media  (0) 2020.03.25
css 다단  (0) 2020.03.24
animation-play-state  (0) 2020.03.24
animation-fill-mode  (0) 2020.03.24
animation-iteration-count, animation-direction  (0) 2020.03.24
블로그 이미지

꽃꽂이하는개발자

,

css 다단

2020/CSS 2020. 3. 24. 12:40
반응형

columns: 폭 다단개수

  • column-width
  • column-count

column-gap : 다단사이 간격

 

column-rule:  두께 종류 색상

  • column-width: 선의 두께 지정
  • column-style: 선의 종류 지정
  • column-color: 선의 색상을 지정
반응형

'2020 > CSS' 카테고리의 다른 글

@media  (0) 2020.03.25
flex  (0) 2020.03.24
animation-play-state  (0) 2020.03.24
animation-fill-mode  (0) 2020.03.24
animation-iteration-count, animation-direction  (0) 2020.03.24
블로그 이미지

꽃꽂이하는개발자

,

animation-play-state

2020/CSS 2020. 3. 24. 12:21
반응형
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .box {
        width: 100px;
        height: 100px;
        background: blueviolet;
        margin: 10px;
        animation: move 2s linear infinite alternate;
        display: flex;
        justify-content: center;
        align-items: center;
      }

      .box::before {
        content: "running";
        font-size: 25px;
        color: white;
        font-weight: 800;
      }
      .box:hover {
        animation-play-state: paused;
        background: dodgerblue;
      }
      .box:hover::before {
        content: "paused";
      }

      @keyframes move {
        0% {
          width: 100px;
        }
        100% {
          width: 500px;
        }
      }
    </style>
  </head>
  <body>
    <div class="box"></div>
  </body>
</html>

animation-play-state:

run : 작동

paused: 정지

 

반응형

'2020 > CSS' 카테고리의 다른 글

flex  (0) 2020.03.24
css 다단  (0) 2020.03.24
animation-fill-mode  (0) 2020.03.24
animation-iteration-count, animation-direction  (0) 2020.03.24
animation-timing-function  (0) 2020.03.24
블로그 이미지

꽃꽂이하는개발자

,

animation-fill-mode

2020/CSS 2020. 3. 24. 12:14
반응형
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <style>
      .box {
        width: 100px;
        height: 100px;
        background: blueviolet;
        margin: 10px;
        animation: move 2s 2s;
        /* 함수 실행시간 딜레이시간*/
        
        /* animation-fill-mode : 애니메이션의 전후 상태(위치)를 설정 
        none: 기존위치에서 시작하고 애니메이션 시작 위치로 이동- 동작- 기존위치에서 끝
        forwards: 기존위치 -> 애니메이션 시작위치 > 동작 > 애니메이션 끝위치에서 끝
        backwards: 애니메이션 시작위치 시작 -> 동작 -> 기존위치에서 끝
        both: 애니메이션 시작 위치에서 시작 -> 동작 -> 애니메이션 끝 위치에서 끝
        */
        animation-fill-mode: both;
        
      }
      @keyframes move {
        0% {
          transform: translate(100px, 100px);
          background: dodgerblue;
        }
        100% {
          transform: translate(300px, 100px);
          background: coral;
        }
      }
    </style>
  </head>
  <body>
    <div class="box"></div>
  </body>
</html>
반응형

'2020 > CSS' 카테고리의 다른 글

css 다단  (0) 2020.03.24
animation-play-state  (0) 2020.03.24
animation-iteration-count, animation-direction  (0) 2020.03.24
animation-timing-function  (0) 2020.03.24
@keyframes  (0) 2020.03.24
블로그 이미지

꽃꽂이하는개발자

,