자바의정석 2

new 연산자 와 객체생성에 대하여

다형성 공부하던 도중 예제에서 궁금한 점이 발견되었고, 나는 객체의 선언과 생성에 관하여 약간의 오해가 있었다는 걸 알게 되었다. Computer com = new Computer(); 컴퓨터라는 클래스에서 객체를 하나 생성하였다. 이것을 하나하나 분석해보자 1) Computer com; 내가 만든 클래스인 컴퓨터라는 참조 타입의 변수를 선언하였다(참조 변수). com은 참조 변수 이므로 초기값이 자동으로 null로 설정된다.(지역변수는 꼭 초기화를 거쳐야 한다.) 이제 com은 주소 값이 담길 그릇인 것이다. 2) new Computer(); 컴퓨터 클래스의 생성자에 new를 붙여주면 연산자 new에 의해서 Computer클래스의 인스턴스가 메모리 상의 빈 공간에 생성과 함께 이 객체의 주소가 생성된다..

Java/Java Study 2021.04.24

[Array] 2차원 배열의 90도 회전

● 2차원 배열을 90도 회전시키려면 어떻게 해야 할지를 생각해보자 주어진 배열↓ char[][] star = { {'*','*',' ',' ',' '}, {'*','*',' ',' ',' '}, {'*','*','*','*','*'}, {'*','*','*','*','*'} }; star 2차원 배열을 90도 돌려놓은 2차원 배열 result 배열을 생성하여 star배열의 성분들을 옮길 것이다. 그리고 그 안의 성분들을 정말로 90도 회전하여 옮긴다는 생각으로 코드를 짜 보자 1) 배열의 회전 4행 5열의 2차원 star배열의 성분들을 옮겨 담을 곳 result 배열을 생성, 이제 star의 행을 90도 회전시켜서 넣을지 열을 회전시켜 넣을지 고민해봐야 한다. 공부하는 입장이기에 2가지의 경우를 모두 ..

Java/Daily-Java 2021.04.20