Mochamad Kolbi Nuron_5025231183_tugas PBO 11
Nama : Mochamad Kolbi Nuron
NRP : 5025231183
tugas pbo ke 11 implementasi aplikasi network
1. user.java
import java.util.ArrayList;
import java.util.List;
public class User {
private String username;
private List<Post> posts;
private List<Post> likedPosts;
public User(String username) {
this.username = username;
this.posts = new ArrayList<>();
this.likedPosts = new ArrayList<>();
}
public String getUsername() {
return username;
}
public List<Post> getPosts() {
return posts;
}
public void createPost(String content, boolean isImage) {
Post newPost = new Post(this, content, isImage);
posts.add(newPost);
}
public void likePost(Post post) {
if (!likedPosts.contains(post)) {
post.addLike();
likedPosts.add(post);
}
}
@Override
public String toString() {
return "User: " + username + " (Posts: " + posts.size() + ")";
}
}
User
merepresentasikan pengguna media sosial dengan atribut username
(nama pengguna), daftar postingan (posts
), dan daftar postingan yang disukai (likedPosts
), dilengkapi konstruktor untuk inisialisasi atribut; metode createPost
untuk membuat postingan baru (dengan teks atau gambar) dan menambahkannya ke daftar posts
; metode likePost
untuk memberikan "like" pada postingan lain jika belum disukai, serta menambahkannya ke likedPosts
; dan metode toString
untuk memberikan representasi string berupa nama pengguna dan jumlah postingan yang dibuat.Network
mengelola daftar pengguna (users
) dan postingan (posts
) dalam aplikasi media sosial, menyediakan fitur untuk mendaftarkan pengguna (registerUser
), mendapatkan pengguna berdasarkan nama (getUser
), menambah postingan (addPost
), menampilkan semua pengguna (displayAllUsers
), dan menampilkan semua postingan (displayAllPosts
).Post
merepresentasikan postingan dalam aplikasi media sosial dengan atribut author
(penulis postingan), content
(isi postingan), isImage
(penanda apakah konten berupa gambar atau teks), dan likes
(jumlah like), menyediakan metode untuk mendapatkan informasi postingan (getAuthor
, getContent
, isImage
, getLikes
), menambah jumlah like (addLike
), serta metode toString
untuk memberikan representasi string yang menampilkan informasi penulis, jenis konten (teks/gambar), dan jumlah like.Main
adalah titik masuk program yang mensimulasikan aplikasi media sosial dengan membuat objek Network
, mendaftarkan pengguna (registerUser
), membuat postingan (createPost
), menambahkan postingan ke jaringan (addPost
), memberikan "like" pada postingan orang lain (likePost
), serta menampilkan daftar pengguna (displayAllUsers
) dan postingan (displayAllPosts
).
Komentar
Posting Komentar